[*] Binary protection state of libglib-2.0.so.0.7200.3

  
  	Full RELRO     No Canary found   NX enabled   DSO          No RPATH     No RUNPATH   No Symbols


[*] Function printf tear down of libglib-2.0.so.0.7200.3

mov r7, r2
mov r5, r1
add r0, pc
bl sym.g_string_new
ldr r3, [r7]
mov r6, r0
cmp r3, 0
ble 0x18230
ldr.w r8, [0x0001825c]
subs r5, 4
ldr.w sb, [0x00018260]
movs r4, 0
add r8, pc
add sb, pc
b 0x1820a
cmp r4, r3
bge 0x18230
ldr r2, [r5, 4]!
mov r1, r8
mov r0, r6
bl sym.g_string_append_printf
ldr r3, [r7]
subs r2, r3, 1
--
mov r4, r0
ldr.w sl, [sp, 0x30]
b 0x1d114
ldr r3, [r6, 8]
mov.w r1, -1
cmp r3, 0
beq 0x1d110
ldr r0, [r6]
bl sym.g_markup_escape_text
mov.w r1, -1
mov r7, r0
ldr r0, [r6, 4]
bl sym.g_markup_escape_text
mov sb, r0
ldr r0, [r6, 0xc]
bl sym.g_date_time_format_iso8601
mov r8, r0
ldr r0, [0x0001d2e4]
ldr r1, [r6, 8]
add r0, pc
bl sym.g_strdup_printf
ldr.w lr, [0x0001d2e8]
mov r6, r0
--
ldr r1, [0x00026910]
ldr r2, [0x00026914]
ldr r0, [0x00026918]
add r1, pc
add r2, pc
adds r1, 0xb0
add r0, pc
bl sym.g_return_if_fail_warning
b 0x266e4
ldr r1, [sp, 0x38]
ldr r0, [sp, 0x74]
bl sym.g_propagate_error
b 0x266e4
mov r0, r4
bl sym.g_utf8_get_char
cmp.w r0, 0x10000
mov r1, r0
blo 0x268a6
ldr r0, [0x0002691c]
add r0, pc
bl sym.g_strdup_printf
ldrd r4, r3, [sp, 0x2c]
str r0, [sp, 0x1c]
--
movs r3, 2
str r0, [sp]
mov r0, r5
bl 0x2a300
b 0x2cdc4
ldr.w r8, [sp, 0xc]
mov r0, r8
bl sym.g_date_time_get_year
mov r6, r0
mov r0, r8
bl sym.g_date_time_get_month
mov r7, r0
mov r0, r8
bl sym.g_date_time_get_day_of_month
ldr.w r1, [0x0002d484]
mov r3, r7
str r0, [sp]
mov r2, r6
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
b 0x2cdc4
ldr r3, [sp, 0x14]
--
cmp r0, 0
beq.w 0x2ce70
movs r0, 0x2b
movt r0, 2
blx 0x17548
ldr r3, [sp, 0x10]
mov r1, r0
mov r2, r5
ldr r0, [sp, 0xc]
bl 0x2d518
cmp r0, 0
bne.w 0x2cdc4
b 0x2ce70
ldr r0, [sp, 0xc]
bl sym.g_date_time_to_unix
mov r3, r1
ldr.w r1, [0x0002d4a4]
mov r2, r0
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
b 0x2cdc4
ldrd r3, r1, [r5, 4]
--
cmp.w fp, 0
bne.w 0x2d34c
ldr r7, [0x0002d4bc]
add r7, pc
b 0x2cf0a
ldr.w r8, [sp, 0xc]
mov r0, r8
bl sym.g_date_time_get_hour
mov r6, r0
mov r0, r8
bl sym.g_date_time_get_minute
mov r7, r0
mov r0, r8
bl sym.g_date_time_get_second
ldr r1, [0x0002d4c0]
mov r3, r7
str r0, [sp]
mov r2, r6
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
b 0x2cdc4
cmp.w fp, 0
--
add r1, pc
bl sym.g_strcmp0
cmp r0, 0
beq.w 0x2ce70
movs r0, 0x2a
b 0x2d04c
ldr r0, [sp, 0xc]
bl sym.g_date_time_get_year
b 0x2d09a
ldr r7, [sp, 0xc]
mov r0, r7
bl sym.g_date_time_get_hour
mov r6, r0
mov r0, r7
bl sym.g_date_time_get_minute
ldr r1, [0x0002d4cc]
mov r3, r0
mov r2, r6
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
b 0x2cdc4
cmp.w fp, 0
--
bne 0x2d348
ldr r7, [0x0002d4d8]
add r7, pc
ldr r0, [sp, 0xc]
bl sym.g_date_time_get_day_of_month
b 0x2cf10
cmp.w fp, 0
bne 0x2d348
ldr r7, [0x0002d4dc]
add r7, pc
b 0x2d2ae
ldr r3, [sp, 0xc]
movw r2, 0x4240
movt r2, 0xf
ldrd r0, r1, [r3]
movs r3, 0
bl 0x766c8
ldr r1, [0x0002d4e0]
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
b 0x2cdc4
ldr r0, [sp, 0xc]
--
add.w r3, r3, r0, lsl 2
ldr.w r0, [r3, 0x3d4]
blx 0x17548
mov r6, r0
b 0x2cfdc
bl sym.g_date_time_get_month
ldr r3, [0x0002d500]
add r3, pc
add.w r3, r3, r0, lsl 2
ldr.w r0, [r3, 0x3d4]
blx 0x17548
mov r6, r0
b 0x2d326
ldr r7, [sp, 0x14]
b 0x2d102
ldr r7, [sp, 0x14]
b 0x2d18c
ldr r1, [0x0002d504]
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
mov r3, r8
orrs r3, r6
beq.w 0x2cdc4
mov r2, r6
ldr r6, [0x0002d508]
mov r0, r5
add r6, pc
mov r1, r6
bl sym.g_string_append_printf
mov r3, r8
cmp r3, 0
beq.w 0x2cdc4
mov r2, r8
mov r1, r6
mov r0, r5
bl sym.g_string_append_printf
b 0x2cdc4
ldr r1, [0x0002d50c]
mov r0, r5
strd r6, r8, [sp]
add r1, pc
bl sym.g_string_append_printf
b 0x2cdc4
ldr r1, [0x0002d510]
mov r0, r5
str r6, [sp]
add r1, pc
bl sym.g_string_append_printf
b 0x2cdc4
ldr r1, [0x0002d514]
mov r0, r5
str r6, [sp]
add r1, pc
bl sym.g_string_append_printf
b 0x2cdc4
movs r2, 0xa
--
bl sym.g_return_if_fail_warning
movs r4, 0
mov r0, r4
pop.w {r4, r5, r6, r7, r8, pc}
cmp r6, 0
beq 0x2db16
mov r1, r5
mov r0, r4
bl 0x2d9d8
cmp.w r0, -1
mov r8, r0
beq 0x2dace
cmp r7, 0
beq 0x2da92
ldr.w r0, [r4, r0, lsl 2]
bl sym.g_free
ldr r0, [0x0002db40]
mov r2, r6
mov r1, r5
add r0, pc
bl sym.g_strdup_printf
str.w r0, [r4, r8, lsl 2]
mov r0, r4
pop.w {r4, r5, r6, r7, r8, pc}
cbz r4, 0x2db2a
mov r0, r4
bl sym.g_strv_length
lsls r7, r0, 2
adds r1, r0, 2
add.w r8, r7, 4
mov r0, r4
movs r2, 4
bl sym.g_realloc_n
mov r4, r0
ldr r0, [0x0002db44]
mov r2, r6
mov r1, r5
add r0, pc
bl sym.g_strdup_printf
movs r3, 0
str r0, [r4, r7]
--
sub sp, 0x1c
mov r4, r2
mov r6, r3
mov r5, r0
cbnz r0, 0x2e162
ldr r3, [0x0002e1a8]
ldr r2, [0x0002e1ac]
ldr r1, [0x0002e1b0]
ldr r0, [0x0002e1b4]
add r3, pc
add r2, pc
adds r3, 0x38
str r2, [sp]
add r1, pc
add r0, pc
movw r2, 0x2f9
bl sym.g_warn_message
cbz r4, 0x2e18a
mov r1, r6
mov r0, r4
bl sym.g_strdup_vprintf
add r1, sp, 8
mov r6, r0
--
cbz r0, 0x2e5ac
push {r4, lr}
mov r4, r0
ldr r0, [r0]
cbz r0, 0x2e5aa
bl sym.g_error_free
movs r3, 0
str r3, [r4]
pop {r4, pc}
bx lr
nop
cbz r0, 0x2e5ea
push {r1, r2, r3}
push {r4, r5, r6, lr}
sub sp, 0xc
ldr r4, [r0]
cbz r4, 0x2e5e0
add r1, sp, 0x20
ldr r0, [sp, 0x1c]
str r1, [sp, 4]
bl sym.g_strdup_vprintf
ldr r6, [r4, 8]
movs r2, 0
--
movs r2, 0
mov r1, r5
bl sym.g_strconcat
str r0, [r4, 8]
mov r0, r5
pop.w {r3, r4, r5, lr}
b.w sym.g_free
pop {r3, r4, r5, pc}
bx lr
push {r2, r3}
push {r4, r5, r6, lr}
mov r4, r0
sub sp, 0x10
bl sym.g_propagate_error
cbz r4, 0x2e646
ldr r4, [r4]
cbz r4, 0x2e650
add r1, sp, 0x24
ldr r0, [sp, 0x20]
str r1, [sp, 0xc]
bl sym.g_strdup_vprintf
ldr r6, [r4, 8]
movs r2, 0
--
add r3, r0
ldrb.w r0, [r3, 0x44]
bx lr
movs r0, 0x18
bx lr
nop
ldm r3, {r3, r4, r5, r6}
movs r4, r0
push {r3, r4, r5, r6, r7, lr}
mov r5, r3
mov r7, r0
mov r0, r1
mov r4, r2
bl sym.g_filename_display_name
mov r6, r0
mov r0, r5
bl sym.g_strerror
mov r1, r6
mov r2, r0
mov r0, r4
bl sym.g_strdup_printf
mov r4, r0
mov r0, r6
--
add r1, pc
add r2, pc
add.w r1, r1, 0x15c
add r0, pc
bl sym.g_return_if_fail_warning
b 0x2f6da
ldr r1, [0x0002f8f8]
ldr r2, [0x0002f8fc]
ldr r0, [0x0002f900]
add r1, pc
add r2, pc
add.w r1, r1, 0x15c
add r0, pc
bl sym.g_return_if_fail_warning
b 0x2f6da
ldr r0, [0x0002f904]
mov r1, r6
mov.w fp, 0
str.w fp, [sp, 0x1c]
add r0, pc
bl sym.g_strdup_printf
mov r8, r0
blx 0x17864
--
mov r0, r4
add r1, pc
bl sym.g_strsplit
ldr r2, [r0]
mov sb, r0
cbz r2, 0x36320
ldr.w r8, [0x00036338]
mov r4, r0
ldr r7, [0x0003633c]
ldr r6, [0x00036340]
add r8, pc
add r7, pc
add r6, pc
ldr r3, [r4, 4]!
mov r1, r6
mov r0, r5
cmp r3, 0
ite ne
movne r3, r8
moveq r3, r7
bl sym.g_string_append_printf
ldr r2, [r4]
cmp r2, 0
--
ldr r2, [r5]
adds r1, r2, r3
ldrb r1, [r1, -0x2]
cmp r1, 0xa
beq 0x37a60
ldr r1, [r5, 8]
adds r0, r3, 1
cmp r0, r1
bhs 0x37ac8
movs r1, 0xa
str r0, [r5, 4]
strb r1, [r2, r3]
movs r1, 0
ldrd r2, r3, [r5]
strb r1, [r2, r3]
ldr r3, [r4, 4]
cbz r3, 0x37a6e
ldr r2, [r3, 4]
mov r1, sl
mov r0, r5
bl sym.g_string_append_printf
ldr r2, [r4]
cbz r2, 0x37a7a
mov r1, sb
mov r0, r5
bl sym.g_string_append_printf
ldr r0, [r4, 8]
bl sym.g_list_last
mov r4, r0
cbnz r0, 0x37a8e
b 0x37aaa
bl sym.g_string_append_printf
ldr r4, [r4, 8]
cbz r4, 0x37aaa
ldr r3, [r4]
mov r1, r6
mov r0, r5
ldrd r2, r3, [r3]
cmp r2, 0
bne 0x37a86
mov r2, r3
mov r1, r8
bl sym.g_string_append_printf
ldr r4, [r4, 8]
cmp r4, 0
--
b 0x37ed8
movs r3, r0
push {r3, r4, r5, r6, r7, lr}
mov r7, r1
ldr r1, [sp, 0x18]
cbz r0, 0x38430
mov r5, r2
cbz r2, 0x38448
mov r6, r3
cbz r3, 0x38460
cmp r1, 0
beq 0x38478
movs r2, 0
mov r4, r0
bl 0x35fb0
mov r1, r5
mov r5, r0
ldr r0, [0x00038490]
mov r2, r6
add r0, pc
bl sym.g_strdup_printf
mov r6, r0
mov r3, r5
--
cmp r2, 0
beq 0x38574
mov r4, r3
movs r3, 0
mov r5, r0
str r3, [sp, 0xc]
cmp r4, 0
beq 0x3858a
mov r0, r4
movs r4, 1
bl sym.g_get_locale_variants
mov sb, r0
ldr.w r2, [sb]
cmp r2, 0
beq 0x3859e
ldr.w sl, [0x000385c0]
str.w sb, [sp, 4]
add sl, pc
mov r1, r7
mov r0, sl
bl sym.g_strdup_printf
movs r3, 0
mov fp, r0
--
cmp r1, 0
beq 0x38676
mov r7, r2
cmp r2, 0
beq 0x3868c
mov r4, r3
mov r5, r0
cmp r3, 0
beq 0x386a2
mov r0, r3
bl sym.g_get_locale_variants
mov r4, r0
mov sb, r0
ldr.w r2, [sb]
cmp r2, 0
beq 0x386b2
ldr.w sl, [0x000386b8]
add sl, pc
mov r1, r7
mov r0, sl
bl sym.g_strdup_printf
movs r3, 0
mov r2, r0
--
mov r1, r5
bl sym.g_string_append
ldr r1, [r4, 4]
ldr r3, [r4, 8]
ldrb r2, [r6, 0x14]
adds r0, r1, 1
cmp r0, r3
blo 0x387fe
mov.w r1, -1
mov r0, r4
bl sym.g_string_insert_c
add.w fp, fp, 1
mov r0, r5
bl sym.g_free
cmp r8, fp
bne 0x3881a
ldr r0, [0x000388f0]
mov r1, sl
ldrd r5, r2, [sp]
add r0, pc
bl sym.g_strdup_printf
mov r7, r0
mov r1, r5
--
movs r4, r0
bgt 0x38dd8
movs r3, r0
invalid
vst1.8 {d0[0]}, [ip], r3
bgt 0x38da4
movs r3, r0
invalid
cmp r7, 0xc2
movs r4, r0
bgt 0x38d84
movs r3, r0
cbz r0, 0x38d88
push {r3, r4, r5, r6, r7, lr}
mov r4, r0
ldr r0, [0x00038d9c]
mov r6, r1
mov r7, r2
mov r1, r3
add r0, pc
bl sym.g_strdup_printf
mov r2, r7
mov r5, r0
--
movs r4, r0
ldrh.w r0, [lr, r3]
bge 0x38e58
movs r3, r0
mov r6, fp
movs r4, r0
cmp r6, 0x74
movs r4, r0
bge 0x38e38
movs r3, r0
push.w {r3, r4, r5, r6, r7, r8, sb, lr}
ldrd r8, sb, [sp, 0x20]
cbz r0, 0x38ee0
mov r4, r0
mov r6, r1
ldr r0, [0x00038ef8]
mov r7, r2
mov r3, sb
mov r2, r8
add r0, pc
bl sym.g_strdup_printf
mov r2, r7
mov r5, r0
--
movs r4, r0
invalid
bls 0x38efc
movs r3, r0
cmp r2, r0
movs r4, r0
cmp r5, 0x18
movs r4, r0
bls 0x390dc
movs r3, r0
push.w {r3, r4, r5, r6, r7, r8, sb, lr}
ldrd r8, sb, [sp, 0x20]
cbz r0, 0x3903c
mov r4, r0
mov r6, r1
ldr r0, [0x00039054]
mov r7, r2
mov r3, sb
mov r2, r8
add r0, pc
bl sym.g_strdup_printf
mov r2, r7
mov r5, r0
--
str r5, [sp, 4]
mov sl, r6
mov r5, r0
add sb, pc
mov r4, sb
mov sb, r7
mov r7, r6
b 0x391cc
ldr r3, [r5]
adds r7, 1
str r0, [r5, 4]
mov r0, r6
strb r2, [r3, r1]
ldrd r1, r2, [r5]
strb.w sl, [r1, r2]
bl sym.g_free
cmp fp, r7
beq 0x39204
ldr r1, [sb, 4]!
mov r0, r4
bl sym.g_strdup_printf
mov r6, r0
mov r0, r5
--
bl sym.g_slist_concat
str r0, [r4, 0x30]
mov r0, r5
str r7, [r5]
ldr r1, [r4, 0x30]
bl sym.g_slist_concat
str r0, [r4, 0x30]
pop {r3, r4, r5, r6, r7, pc}
nop
push {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
bl sym.g_utf8_get_char_validated
adds r3, r0, 3
bls 0x3f230
cbnz r5, 0x3f22c
ldr r0, [0x0003f240]
mov r1, r5
add r0, pc
bl sym.g_strdup_printf
movs r3, 0
mov r5, r0
--
ldr r1, [sp, 4]
mov r0, r4
bl 0x3f244
ldr r1, [sp, 4]
mov r0, r5
bl sym.g_propagate_error
add sp, 0xc
pop {r4, r5, r6, r7, pc}
cdp2 p0, 2, c0, c6, c3, 0
push {r3}
push.w {r4, r5, r6, r7, r8, lr}
sub sp, 0xc
add r3, sp, 0x24
mov r6, r0
mov r7, r1
mov r8, r2
ldr r4, [r3], 4
mov r1, r3
mov r0, r4
str r3, [sp, 4]
bl sym.g_strdup_vprintf
mov.w r1, -1
mov r4, r0
--
movs r0, r0
ldc2 p0, c0, [ip, -0xc]!
stc2l p0, c0, [ip], -0xc
invalid
push.w {r4, r5, r6, r7, r8, lr}
mov r6, r0
ldrb r4, [r2]
sub sp, 0x10
mov r8, r1
cbz r4, 0x3f6b2
movs r5, 0
cmp r4, 0xa
ldrb r4, [r2, 1]!
it eq
addeq r5, 1
cmp r4, 0
bne 0x3f65c
add r1, sp, 0x2c
ldr r0, [sp, 0x28]
str r1, [sp, 0xc]
bl sym.g_strdup_vprintf
mov r7, r0
bl sym.g_markup_error_quark
--
lsrs r7, r1, 0x1c
lsrs r7, r1, 0x1c
lsrs r0, r0, 0x1d
movs r0, r7
subs r1, r3, 1
sub.w r0, r3, 0xb
cmp r0, 1
it hi
cmphi r1, 7
bls 0x40efa
sub.w r1, r3, 0xe
cmp r3, 0x7f
it ne
cmpne r1, 0x11
bhi 0x40f7e
cmp r5, r6
blo 0x40fec
mov r2, r3
mov r1, fp
mov r0, r8
bl sym.g_string_append_printf
mov r5, r4
cmp r7, r5
--
cmp r3, 0xc2
bne 0x40f0a
mov r0, r2
str r2, [sp, 4]
bl sym.g_utf8_get_char
mov r3, r0
subs r0, 0x80
sub.w r1, r3, 0x86
cmp r1, 0x19
it hi
cmphi r0, 4
bhi 0x40f0a
cmp r5, r6
ldr r2, [sp, 4]
blo 0x41018
ldr r1, [0x00041040]
mov r2, r3
mov r0, r8
adds r5, r4, 1
add r1, pc
bl sym.g_string_append_printf
b 0x40f0a
subs r2, r2, r5
--
cmp r1, r0
bhs.w 0x411d0
ldr.w r0, [r8]
str.w r1, [r8, 4]
strb r5, [r0, r2]
mov r0, r4
ldrd r1, r2, [r8]
strb.w fp, [r1, r2]
mov r1, sl
bl 0x3ee9c
mov r5, r0
mov r0, r6
mov r1, r5
cmp r5, 0
bne 0x41088
str.w sb, [sp, 0x10]
mov r1, sb
ldr r0, [r6]
mov r7, r8
ldr.w r8, [sp]
bl sym.g_strdup_vprintf
str r0, [sp]
cmp r0, 0
beq 0x411f2
ldr r1, [sp, 0x10]
ldr r0, [r7]
bl sym.g_strdup_vprintf
mov r4, r0
str r0, [sp, 4]
--
mov r8, fp
movs r1, 0
b 0x4115c
movs r1, 1
mov r0, r6
bl sym.g_string_free
movs r1, 1
mov r0, r7
bl sym.g_string_free
ldr r0, [sp]
bl sym.g_free
movs r0, 0
bl sym.g_free
b 0x411c8
push {r0, r1, r2, r3}
push {lr}
sub sp, 0xc
add r1, sp, 0x10
ldr r0, [r1], 4
str r1, [sp, 4]
bl sym.g_markup_vprintf_escaped
add sp, 0xc
ldr lr, [sp], 4
--
bl sym.g_convert_with_fallback
cmp r0, 0
beq 0x41e50
add sp, 0x18
pop {r4, r5, r6, pc}
ldr r0, [0x00041e8c]
add r0, pc
bl sym.g_string_new
ldrb r2, [r4]
mov r5, r0
cbz r2, 0x41e2e
ldr r6, [0x00041e90]
add r6, pc
b 0x41df4
cmp r2, 0xa
beq 0x41e0e
cmp r2, 0xd
beq 0x41e3c
mov r1, r6
mov r0, r5
bl sym.g_string_append_printf
ldrb r2, [r4, 1]!
cbz r2, 0x41e2e
--
ldr r0, [sp, 4]
bl sym.g_free
mov r0, r7
bl sym.g_free
add.w sp, sp, 0x4e0
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}
add sp, 0xc
bx lr
ldr r1, [sp, 8]
movs r3, 0x20
movs r2, 0xc
mov r0, r1
bl sym.g_array_sized_new
ldr r1, [sp, 0x10]
mov r2, r6
str r0, [sp, 4]
bl sym.g_array_append_vals
b 0x4221e
mov r1, r5
mov r0, r2
bl sym.g_strdup_vprintf
mov r7, r0
mov r5, r0
--
movs r3, r0
b 0x42948
movs r3, r0
b 0x42a14
movs r3, r0
push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}
bics r4, r1, 3
ldr.w r8, [0x000425b8]
sub sp, 0x64
str r0, [sp, 0x10]
add r8, pc
bne 0x4236a
add sp, 0x64
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldr r6, [0x000425bc]
mov r5, r1
mov sb, r0
mov r1, r3
mov r0, r2
add r6, pc
bl sym.g_strdup_vprintf
ldr r3, [r6, 0x34]
str r0, [sp, 4]
--
add r2, pc
ldr r3, [r3, 0x14]
ldr.w fp, [r2]
b 0x4247c
cmp r0, 0
bne 0x424e2
movs r1, 1
movs r3, 5
b 0x4245c
add r6, sp, 0x30
ldr r1, [r7, 4]
mov r0, r6
bl 0x41950
ldr r1, [r7]
cbz r1, 0x425a8
ldr r0, [0x000425e0]
mov r2, r6
ldr r3, [r7, 8]
orr r4, r4, 2
add r0, pc
bl sym.g_strdup_printf
mov r6, r0
mov r2, r0
--
add.w r8, sp, 0x4c
ldr.w r2, [sp, 0x474]
movw r1, 0x401
mov r0, r8
blx sym.imp.rename
mov r3, r8
cmp r7, 0
mov r0, r6
ite ne
movne r2, 6
moveq r2, 5
mov r1, r4
str r3, [r4, 0x34]
bl sym.g_log_structured_array
mov r0, r5
bl sym.g_free
addw sp, sp, 0x454
pop.w {r4, r5, r6, r7, r8, sb, pc}
mov r1, r3
ldr.w r0, [sp, 0x474]
bl sym.g_strdup_vprintf
mov r5, r0
mov r3, r0
--
b 0x426c4
movs r3, r0
b 0x426e8
movs r3, r0
svc 0xf0
movs r3, r0
svc 0xc8
movs r3, r0
svc 0xec
movs r3, r0
b 0x42734
movs r3, r0
cmp r0, 0
blt 0x42708
push {r4, r5, lr}
sub sp, 0x8c
movs r3, 0x80
add r2, sp, 4
add r1, sp, 8
str r3, [sp, 4]
blx sym.imp.sprintf
cbz r0, 0x426ec
movs r0, 0
--
movs r3, 0
mov r0, r7
mov r1, r4
bl 0x76628
mov.w r2, 0x3e8
movs r3, 0
bl 0x76628
mov r3, r2
ldr r2, [sp, 0xc]
cmp r2, 0
beq.w 0x429a2
ldr r2, [0x00042a94]
ldr r1, [0x00042a98]
add r2, pc
add r1, pc
strd r3, r1, [sp]
mov r0, r5
ldr r1, [0x00042a9c]
mov r3, r8
add r1, pc
bl sym.g_string_append_printf
cmp r6, 0
beq.w 0x429c4
--
ldrb r2, [r4]
ldr.w r1, [sl, r1]
ldr r1, [r1]
ldrb r2, [r1, r2]
add r4, r2
add.w r2, sb, r7
cmp r4, r2
bhs 0x4293a
mov.w r1, -1
mov r0, r4
bl sym.g_utf8_get_char_validated
adds r3, r0, 3
mov r1, r0
bhi 0x4296a
cmp r0, 0xd
bne 0x428aa
ldrb r2, [r4, 1]
cmp r2, 0xa
beq 0x428c4
mov r0, r8
bl sym.g_strdup_printf
ldr r3, [0x00042aa8]
mov r7, r0
--
bl sym.g_get_console_charset
cbz r0, 0x429aa
ldr r1, [r6]
mov r0, r5
bl sym.g_string_append
movs r1, 1
mov r0, r6
bl sym.g_string_free
movs r1, 0
mov r0, r5
bl sym.g_string_free
add sp, 0xd4
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}
sub.w r2, r0, 0x7f
cmp r2, 0x20
bhi 0x428c4
b 0x428f6
sub.w fp, r4, fp
ldrb r1, [r4]
ldr r0, [sp, 8]
bl sym.g_strdup_printf
mov r1, fp
mov r4, r0
--
bic sb, r3, 3
ldr r1, [0x00042abc]
mov r0, r5
add r1, pc
bl sym.g_string_append
ldr r3, [0x00042a88]
ldr.w r3, [sl, r3]
ldr r3, [r3]
bics.w r3, sb, r3
bne.w 0x427f4
bl sym.g_get_prgname
mov r8, r0
blx sym.imp.fread
mov r3, r0
cmp.w r8, 0
beq 0x42a5c
ldr r1, [0x00042ac0]
mov r2, r8
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
cmp r7, 0
bne.w 0x427d0
b 0x427f4
movs r2, 0x2d
mov.w r1, -1
mov r0, r5
bl sym.g_string_insert_c
b 0x427f4
ldr r1, [0x00042ac4]
mov r2, r0
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
cmp r7, 0
bne.w 0x427d0
--
adds r5, 0x24
movs r3, r0
lsls r4, r4, 0xf
movs r0, r0
bhs 0x434b4
movs r3, r0
subs r4, 0x58
movs r3, r0
push.w {r4, r5, r6, r7, r8, lr}
mov r4, r3
sub sp, 0x40
mov r3, r2
add r7, sp, 0x20
mov r5, r0
ldr r2, [0x0004357c]
mov r6, r1
ldr.w r8, [sp, 0x58]
movs r1, 0x20
mov r0, r7
add r2, pc
bl sym.g_snprintf
ldrb r3, [r4]
cmp.w r8, 0
--
push.w {r4, r5, r6, r7, r8, lr}
mov r5, r2
sub sp, 0x38
add r0, pc
ldr r2, [r0, 0x34]
cbz r2, 0x43704
ldr r6, [r2]
add.w r8, sp, 8
mov r4, r1
movs r2, 0
mov r0, r8
mov r7, r3
ldr r1, [r6, 4]
bl 0x41950
ldr r1, [r6]
cbz r1, 0x4370a
ldr r0, [0x00043714]
mov r2, r8
ldr r3, [r6, 8]
add r0, pc
bl sym.g_strdup_printf
mov r6, r0
ldr r0, [0x00043718]
--
mov r0, r6
bl sym.g_mutex_lock
ldr r7, [r4, 0x58]
mov r0, r6
str r5, [r4, 0x58]
bl sym.g_mutex_unlock
mov r0, r7
pop {r3, r4, r5, r6, r7, pc}
lsls r2, r2, 3
movs r2, r1
push {r0, r1, r2, r3}
push {r4, r5, r6, r7, lr}
sub sp, 0xc
ldr r0, [sp, 0x20]
ldr r7, [0x000437e0]
add r7, pc
cbz r0, 0x43788
ldr r4, [0x000437e4]
add r1, sp, 0x24
str r1, [sp]
bl sym.g_strdup_vprintf
add r4, pc
mov r5, r0
--
add.w r6, r4, 0xc
mov r0, r6
bl sym.g_mutex_lock
ldr r7, [r4, 0x5c]
mov r0, r6
str r5, [r4, 0x5c]
bl sym.g_mutex_unlock
mov r0, r7
pop {r3, r4, r5, r6, r7, pc}
invalid
push {r0, r1, r2, r3}
push {r4, r5, r6, r7, lr}
sub sp, 0xc
ldr r0, [sp, 0x20]
ldr r7, [0x000438b8]
add r7, pc
cbz r0, 0x43860
ldr r4, [0x000438bc]
add r1, sp, 0x24
str r1, [sp]
bl sym.g_strdup_vprintf
add r4, pc
mov r5, r0
--
cbnz r3, 0x44a82
add sp, 0xc
pop.w {r4, r5, r6, r7, r8, sb, pc}
mov r6, r0
mov r5, r1
mov r0, r2
mov r1, r4
bl sym.g_hash_table_lookup
mov sb, r0
cmp r0, 0
beq 0x44b18
movs r0, 0
bl sym.g_string_new
ldrb r2, [r4, 4]
mov r8, r0
cmp r2, 0
bne 0x44b06
ldr r1, [0x00044b20]
mov r2, sb
add r1, pc
bl sym.g_string_append_printf
ldr r0, [r4, 0x18]
cbz r0, 0x44ac4
ldr r3, [r6, 0x18]
cbz r3, 0x44ab8
ldr r1, [r6, 0x20]
blx r3
ldr r1, [0x00044b24]
mov r2, r0
mov r0, r8
add r1, pc
bl sym.g_string_append_printf
ldr.w sb, [r8]
mov r0, sb
bl 0x44960
ldr r1, [r4, 0x14]
adds r4, r5, 4
subs r4, r4, r0
cbz r1, 0x44b12
ldr r3, [r6, 0x18]
cbz r3, 0x44ae2
mov r0, r1
ldr r1, [r6, 0x20]
blx r3
mov r1, r0
str r1, [sp, 4]
mov r0, r7
ldr r1, [0x00044b28]
mov r3, r4
mov r2, sb
add r1, pc
str r1, [sp]
ldr r1, [0x00044b2c]
add r1, pc
bl sym.g_string_append_printf
movs r1, 1
mov r0, r8
add sp, 0xc
pop.w {r4, r5, r6, r7, r8, sb, lr}
b.w sym.g_string_free
ldr r1, [0x00044b30]
mov r3, sb
add r1, pc
bl sym.g_string_append_printf
b 0x44aac
ldr r1, [0x00044b34]
--
mov sb, r0
movs r4, 0
add r3, pc
str.w lr, [sp, 0x1c]
str r3, [sp, 0xc]
lsl.w r3, lr, 2
str r3, [sp, 0x14]
b 0x45336
adds r4, 1
cmp r2, r4
bls 0x453e4
rsb r5, r4, r4, lsl 3
ldr r3, [r6, 0x24]
lsls r5, r5, 2
add r3, r5
ldrb r3, [r3, 4]
cmp r3, r7
bne 0x45330
ldr r0, [sp, 0xc]
mov r1, r7
bl sym.g_strdup_printf
ldr r2, [r6, 0x24]
mov r8, r0
--
ldrb r1, [r1]
cmp r1, 0
bne 0x45858
ldr r3, [r6, 0x18]
ldr r0, [r2, 0x18]
cmp r3, 0
beq.w 0x45e36
ldr r1, [r6, 0x20]
blx r3
mov r6, r0
ldr.w r0, [0x00045e80]
add r0, pc
bl sym.glib_gettext
mov r7, r0
bl sym.g_get_prgname
ldr.w r1, [0x00045e84]
mov r3, r0
mov r2, r7
mov r0, sl
add r1, pc
bl sym.g_string_append_printf
ldrb r3, [r5, 0x1c]
lsls r0, r3, 0x1f
bmi 0x458b0
ldr r3, [r5, 0x20]
cbz r3, 0x458ac
ldr r3, [r3, 0x28]
cbnz r3, 0x458b0
ldr r3, [r5]
cbz r3, 0x458c8
ldr.w r0, [0x00045e88]
add r0, pc
bl sym.glib_gettext
ldr.w r1, [0x00045e8c]
mov r2, r0
mov r0, sl
add r1, pc
bl sym.g_string_append_printf
cbz r6, 0x458de
ldr.w r1, [0x00045e90]
--
ldr.w r3, [sb, 0x28]
adds r4, 1
cmp r3, r4
bls 0x45a4c
ldr.w sl, [sb, 0x24]
rsb fp, r4, r4, lsl 3
mov r0, r6
ldr.w r1, [sl, fp, lsl 2]
bl sym.g_hash_table_lookup
mov r1, r0
add.w r5, sl, fp, lsl 2
mov r0, r6
cmp r1, 0
beq 0x459e2
ldr r1, [r5, 8]
lsls r2, r1, 0x19
bmi 0x459e2
ldr.w r2, [sl, fp, lsl 2]
ldr.w r1, [sb]
ldr r0, [sp, 0x18]
bl sym.g_strdup_printf
mov r1, r5
mov r2, r0
--
ite eq
moveq fp, 0x68
mov.w fp, 0x3f
ldr r7, [r5]
add r0, pc
bl sym.glib_gettext
mov r8, r0
ldr r0, [0x00045eec]
add r0, pc
bl sym.glib_gettext
ldr r1, [0x00045ef0]
mov r3, fp
str r0, [sp, 8]
mov r2, r8
mov r0, sl
str r6, [sp]
add r1, pc
str r1, [sp, 4]
ldr r1, [0x00045ef4]
add r1, pc
bl sym.g_string_append_printf
cbz r7, 0x45dc8
ldr r0, [0x00045ef8]
subs r6, 1
ldr.w r8, [0x00045efc]
mov sb, r4
add r0, pc
bl sym.glib_gettext
ldr r3, [0x00045f00]
add r8, pc
ldr r1, [0x00045f04]
mov r2, r4
str r0, [sp]
mov r0, sl
add r3, pc
add r1, pc
bl sym.g_string_append_printf
ldr r4, [r7]
movs r2, 0
ldr r0, [r5, 0x20]
mov r1, r4
bl 0x44b88
cbz r0, 0x45dc0
ldr r3, [r4, 0x18]
ldr.w fp, [r4]
ldr r0, [r4, 8]
cbz r3, 0x45db2
ldr r1, [r4, 0x20]
blx r3
str r0, [sp]
mov r3, fp
mov r2, r6
mov r1, r8
mov r0, sl
bl sym.g_string_append_printf
ldr r7, [r7, 4]
cmp r7, 0
--
strh r2, [r4, 0x18]
movs r3, r0
strh r0, [r2, 0x18]
movs r3, r0
mov r0, r1
push {r3, lr}
mov r1, r2
bl sym.g_string_append
movs r0, 0
pop {r3, pc}
nop
push {r4, r5, r6, lr}
mov r5, r0
ldr r3, [r0, 4]
sub sp, 8
ldrd r0, r2, [r3, 8]
lsls r3, r2, 0xc
bpl 0x49f6c
add r3, sp, 4
mov r2, sp
blx sym.imp.fprintf
cmp r0, 0
ble 0x49f68
--
ldr r0, [r0, 4]
bl sym.g_free
mov r0, r4
pop.w {r4, lr}
b.w sym.g_free
push {r1, r2, r3}
push {r4, r5, lr}
sub sp, 8
ldr r2, [sp, 0x14]
cbz r0, 0x4c586
cbz r2, 0x4c5a2
ldr r3, [r0, 8]
mov r4, r0
ldr r1, [r0, 0x60]
adds r3, 1
str r3, [r0, 8]
cbz r1, 0x4c57c
add r1, sp, 0x18
mov r0, r2
str r1, [sp, 4]
bl sym.g_strdup_vprintf
ldr r3, [r4, 0x60]
mov r5, r0
--
adr r3, 0x2a8
movs r2, r0
strb r4, [r0, 0xa]
movs r3, r0
bge 0x4c6b0
movs r2, r0
adr r3, 0x238
movs r2, r0
push {r1, r2, r3}
push {r4, r5, lr}
sub sp, 8
ldr r3, [sp, 0x14]
cbz r0, 0x4c610
cbz r3, 0x4c62c
ldr r2, [r0, 0x60]
mov r4, r0
cbz r2, 0x4c606
add r1, sp, 0x18
mov r0, r3
str r1, [sp, 4]
bl sym.g_strdup_vprintf
ldr r3, [r4, 0x60]
mov r5, r0
--
movs r1, 1
push {r4, r5, r6, lr}
sub sp, 8
ldr r4, [0x0005111c]
add r3, pc
ldr r0, [0x00051120]
ldr r5, [r3, r4]
add r0, pc
ldr r3, [r5]
blx 0x17488
bl sym.g_get_prgname
ldr r6, [r5]
mov r4, r0
cbz r0, 0x51110
blx sym.imp.fread
ldr r1, [0x00051124]
mov r3, r0
mov r2, r4
mov r0, r6
add r1, pc
bl sym.g_fprintf
add r2, sp, 0x1c
ldr r1, [sp, 0x18]
ldr r0, [r5]
str r2, [sp, 4]
bl sym.g_vfprintf
ldr r1, [r5]
movs r0, 0xa
--
mov r5, sl
it eq
addeq fp, fp, 8
add.w ip, r2, ip, lsl 3
cmp fp, ip
bhs 0x518ac
ldr.w r3, [fp]
cmp r4, r3
beq 0x518d6
ldr r0, [0x000519f4]
add r0, pc
adds r0, 0x50
bl sym.g_mutex_unlock
ldr r1, [0x000519f8]
ldr r0, [0x000519fc]
add r1, pc
ldr.w r0, [r8, r0]
mov r3, r6
mov r2, r4
ldr r0, [r0]
bl sym.g_fprintf
movs r0, 0
add sp, 0x14
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}
mov r5, sl
b 0x5189c
ldr r0, [0x00051a00]
ldr.w r3, [fp, 4]
add r0, pc
adds r0, 0x50
str r3, [sp, 8]
bl sym.g_mutex_unlock
ldr r3, [sp, 8]
cmp r6, r3
beq 0x51908
cbz r3, 0x51904
ldr r1, [0x000519fc]
mov r2, r4
ldr.w r0, [r8, r1]
ldr r1, [0x00051a04]
str r6, [sp]
ldr r0, [r0]
add r1, pc
bl sym.g_fprintf
b 0x518ca
cmp r6, 0
--
nop
lsrs r4, r0, 0x19
movs r3, r0
adds r6, r1, r5
movs r3, r0
subs r3, 0x8c
movs r2, r0
strh r4, [r7, 0x14]
movs r2, r0
adds r2, r7, r4
movs r3, r0
subs r3, 0x78
movs r2, r0
push {lr}
sub sp, 0xc
mov r2, r1
movs r3, 0
mov r1, r0
add r0, sp, 4
str r3, [sp, 4]
bl sym.g_vasprintf
ldr r0, [sp, 4]
add sp, 0xc
ldr pc, [sp], 4
nop
push {r0, r1, r2, r3}
push {lr}
sub sp, 0xc
add r1, sp, 0x10
ldr r0, [r1], 4
str r1, [sp, 4]
bl sym.g_strdup_vprintf
add sp, 0xc
ldr lr, [sp], 4
--
bl sym.g_intern_string
mov r4, r0
mov r0, r6
bl sym.g_free
mov r0, r4
add sp, 8
pop {r4, r5, r6, pc}
mov r3, r0
mov.w r1, -1
mov r0, r4
mov r2, r3
str r3, [sp]
bl sym.g_locale_to_utf8
mov r4, r0
mov r6, r0
cmp r4, 0
bne 0x53140
ldr r0, [0x0005317c]
mov r1, r5
add r0, pc
bl sym.g_strdup_printf
mov r4, r0
mov r6, r0
--
b 0x54596
ldr r1, [0x00054758]
ldr r2, [0x0005475c]
ldr r0, [0x00054760]
add r1, pc
add r2, pc
add.w r1, r1, 0x3f8
add r0, pc
bl sym.g_return_if_fail_warning
b 0x54596
cmp r0, 0x30
bne 0x54604
ldrb r0, [r4, 1]
strd r1, r2, [sp, 0x10]
b 0x54692
ldr r5, [0x00054764]
mov r2, fp
mov r3, r7
add r5, pc
mov r0, r5
bl sym.g_strdup_printf
mov r2, sl
mov r3, sb
mov r6, r0
mov r0, r5
bl sym.g_strdup_printf
mov r5, r0
bl sym.g_number_parser_error_quark
--
mov r3, r0
mov r1, r5
mov r0, r8
str r4, [sp]
bl sym.g_set_error
b 0x547a6
ldr r1, [0x0005495c]
ldr r2, [0x00054960]
ldr r0, [0x00054964]
add r1, pc
add r2, pc
addw r1, r1, 0x414
add r0, pc
bl sym.g_return_if_fail_warning
b 0x547a6
ldr r5, [0x00054968]
mov r2, fp
mov r3, r7
add r5, pc
mov r0, r5
bl sym.g_strdup_printf
mov r2, sl
mov r3, sb
mov r6, r0
mov r0, r5
bl sym.g_strdup_printf
mov r5, r0
bl sym.g_number_parser_error_quark
--
ldr r2, [0x00055488]
ldr r0, [0x0005548c]
add r1, pc
add r2, pc
add.w r1, r1, 0x194
add r0, pc
bl sym.g_return_if_fail_warning
mov r0, r8
pop.w {r4, r5, r6, r7, r8, pc}
usat r0, 2, ip
cmp r4, 0x46
movs r0, r1
asrs r4, r0, 0x13
movs r2, r0
cbz r0, 0x554ce
cbz r1, 0x554e2
push {r4, r5, lr}
sub sp, 0xc
mov r4, r0
add r0, sp, 4
bl sym.g_vasprintf
subs r5, r0, 0
bge 0x554a8
--
mov r6, r2
movs r1, 0
bl sym.g_string_truncate
mov r2, r6
mov r1, r5
mov r0, r4
pop.w {r4, r5, r6, lr}
b.w sym.g_string_append_vprintf
push {r1, r2, r3}
movs r1, 0
push {r4, r5, r6, lr}
sub sp, 0xc
add r4, sp, 0x1c
mov r5, r0
ldr r6, [r4], 4
bl sym.g_string_truncate
mov r0, r5
mov r2, r4
mov r1, r6
str r4, [sp, 4]
bl sym.g_string_append_vprintf
add sp, 0xc
pop.w {r4, r5, r6, lr}
add sp, 0xc
bx lr
nop
push {r1, r2, r3}
push {lr}
sub sp, 8
add r2, sp, 0xc
ldr r1, [r2], 4
str r2, [sp, 4]
bl sym.g_string_append_vprintf
add sp, 8
ldr lr, [sp], 4
--
bvc 0x56274
movs r0, r1
beq 0x561d0
movs r0, r1
push {r0, r1, r2, r3}
movs r1, 2
push {r4, r5, lr}
sub sp, 0xc
add r3, sp, 0x18
ldr r4, [0x00056258]
ldr r2, [0x0005625c]
ldr r5, [r3], 4
add r4, pc
add r2, pc
ldr r0, [r4, 0x3c]
str r1, [r2]
str r3, [sp, 4]
bl sym.g_free
ldr r1, [sp, 4]
mov r0, r5
bl sym.g_strdup_vprintf
str r0, [r4, 0x3c]
add sp, 0xc
--
bvs 0x56208
movs r0, r1
beq 0x56364
movs r0, r1
push {r0, r1, r2, r3}
movs r1, 3
push {r4, r5, lr}
sub sp, 0xc
add r3, sp, 0x18
ldr r4, [0x000562bc]
ldr r2, [0x000562c0]
ldr r5, [r3], 4
add r4, pc
add r2, pc
ldr r0, [r4, 0x3c]
str r1, [r2]
str r3, [sp, 4]
bl sym.g_free
ldr r1, [sp, 4]
mov r0, r5
bl sym.g_strdup_vprintf
str r0, [r4, 0x3c]
add sp, 0xc
--
bvs 0x563a4
movs r0, r1
beq 0x56300
movs r0, r1
push {r0, r1, r2, r3}
movs r1, 1
push {r4, r5, lr}
sub sp, 0xc
add r3, sp, 0x18
ldr r4, [0x00056320]
ldr r2, [0x00056324]
ldr r5, [r3], 4
add r4, pc
add r2, pc
ldr r0, [r4, 0x3c]
str r1, [r2]
str r3, [sp, 4]
bl sym.g_free
ldr r1, [sp, 4]
mov r0, r5
bl sym.g_strdup_vprintf
str r0, [r4, 0x3c]
add sp, 0xc
--
ldr r0, [sp, 0x10]
str.w r3, [sb, 0x54]
blx 0x1747c
ldr r0, [sp, 0x18]
blx 0x1747c
ands r2, r8, 0x200
bne 0x56a16
ldr r0, [0x00056a90]
mov r1, r2
add r0, pc
blx 0x173c8
subs r6, r0, 0
blt 0x56a5c
ldr r5, [sp, 0x14]
b 0x56988
ldr r0, [r4]
cmp r0, 4
bne 0x56a00
movs r1, 1
mov r0, r5
blx sym.imp.vfprintf
cmp r0, 0
blt 0x56982
ldr r5, [sp, 0x1c]
b 0x5699e
ldr r0, [r4]
cmp r0, 4
bne 0x56a00
movs r1, 2
mov r0, r5
blx sym.imp.vfprintf
cmp r0, 0
blt 0x56998
adds r3, r6, 1
bne 0x569b6
b 0x569c6
ldr r0, [r4]
cmp r0, 4
bne 0x56a00
movs r1, 0
mov r0, r6
blx sym.imp.vfprintf
cmp r0, 0
blt 0x569b0
--
str r4, [sp, 0x20]
cmp r5, 0
bne 0x57444
ldr.w r4, [0x00057bb4]
bl sym.g_random_int
mov r5, r0
bl sym.g_random_int
mov sb, r0
add r4, pc
bl sym.g_random_int
mov sl, r0
bl sym.g_random_int
ldr.w r2, [0x00057bb8]
mov r3, r5
add.w r5, r4, 0x78
movs r1, 0x25
strd sl, r0, [sp, 4]
mov r0, r5
add r2, pc
str.w sb, [sp]
bl sym.g_snprintf
ldr.w fp, [r8]
ldr.w sb, [r7]
--
ldr.w r0, [fp, r6]
mov r1, r2
add.w r8, fp, r6
bl sym.g_ascii_strtoull
ldr r3, [0x00057c94]
add r3, pc
str.w r0, [r3, 0xac]
movs r3, 0
str.w r3, [r8]
b 0x5750c
str r0, [sp, 0x24]
bl sym.g_get_prgname
bl sym.g_path_get_basename
ldrb r3, [r0]
mov r4, r0
cmp r3, 0
beq 0x57a68
ldr r0, [0x00057c98]
mov r1, r4
add r0, pc
bl sym.g_strdup_printf
mov r5, r0
mov r0, r4
--
str.w r2, [fp, r5, lsl 2]
add r3, pc
ldr r2, [r3, 0x50]
cbnz r2, 0x57d5a
movs r2, 1
adds r4, r5, 1
str.w r2, [r3, 0xbc]
b 0x5750c
ldr.w r1, [r8]
ldr r0, [0x00057f80]
ldr r2, [r3, 8]
ldr r1, [r1]
add r0, pc
bl sym.g_printerr
ldr r0, [sp, 0x24]
bl sym.g_error_free
movs r0, 1
blx 0x1784c
ldr r0, [0x00057f84]
add r0, pc
blx sym.imp.snprintf
movs r0, 1
blx 0x1784c
ldr r4, [0x00057f88]
movs r3, 0
str.w r3, [fp, r6]
ldr r1, [r7, 4]
add r4, pc
ldr.w r0, [r4, 0xb8]
bl sym.g_slist_prepend
str.w r0, [r4, 0xb8]
b 0x57cea
adds r1, r5, 3
ldr r5, [0x00057f8c]
add r5, pc
ldr.w r0, [r5, 0xb8]
bl sym.g_slist_prepend
str.w r0, [r5, 0xb8]
b 0x57ce8
ldr r0, [0x00057f90]
add r0, pc
blx sym.imp.snprintf
movs r0, 1
blx 0x1784c
--
strh r4, [r7, 0x28]
movs r2, r0
strh r2, [r4, 0x2a]
movs r2, r0
strh r0, [r4, 0x28]
movs r2, r0
strh r2, [r2, 0x28]
movs r2, r0
b 0x585a0
movs r2, r0
vst4.8 {d16, d17, d18, d19}, [r6], r5
push {r2, r3}
push {r4, lr}
sub sp, 0x18
add r3, sp, 0x20
ldr r2, [r3], 4
strd r0, r1, [sp, 0x10]
mov r1, r3
mov r0, r2
str r3, [sp, 0xc]
bl sym.g_strdup_vprintf
mov r1, r0
mov r4, r0
--
movs r3, 1
movs r2, 0
str r0, [sp]
movs r0, 7
bl 0x56d24
mov r0, r4
bl sym.g_free
add sp, 0x18
pop.w {r4, lr}
add sp, 8
bx lr
push {r2, r3}
push {r4, lr}
sub sp, 0x18
add r3, sp, 0x20
ldr r2, [r3], 4
strd r0, r1, [sp, 0x10]
mov r1, r3
mov r0, r2
str r3, [sp, 0xc]
bl sym.g_strdup_vprintf
mov r1, r0
mov r4, r0
add r0, sp, 0x10
movs r3, 1
movs r2, 0
str r0, [sp]
movs r0, 8
bl 0x56d24
mov r0, r4
bl sym.g_free
add sp, 0x18
pop.w {r4, lr}
add sp, 8
bx lr
push {r0, r1, r2, r3}
push {r4, lr}
sub sp, 0x10
add r1, sp, 0x18
ldr r0, [r1], 4
str r1, [sp, 0xc]
bl sym.g_strdup_vprintf
movs r3, 0
mov r1, r0
--
mov.w r5, -1
ldr r2, [0x00058c80]
ldr r0, [0x00058c84]
add r1, pc
add r2, pc
add.w r1, r1, 0x190
add r0, pc
bl sym.g_return_if_fail_warning
mov r0, r5
pop {r4, r5, r6, pc}
ldr r4, [0x00058c88]
movs r5, 0
str r5, [r3, 0x44]
mov r6, r0
bl 0x559e4
add r4, pc
ldr r1, [r6]
str r0, [r4, 0x64]
ldr r0, [0x00058c8c]
add r0, pc
bl sym.g_strdup_printf
ldr r3, [0x00058c90]
ldr r4, [r4, 0x60]
--
adr r5, 0x3c8
movs r0, r1
add r4, sp, 0xe8
movs r0, r1
push.w {r4, r5, r6, r7, r8, sb, lr}
sub sp, 0x44
ldr.w r8, [sp, 0x60]
mov r4, r0
mov r7, r1
mov r5, r3
ldr r6, [0x00058e58]
add r6, pc
cmp.w r8, 0
beq 0x58e04
mov r3, r2
ldr r2, [0x00058e5c]
add.w sb, sp, 0x20
movs r1, 0x20
mov r0, sb
add r2, pc
bl sym.g_snprintf
cmp r4, 0
beq 0x58dfc
--
bl sym.g_ptr_array_add
ldr r1, [0x000590fc]
mov r0, r5
add r1, pc
bl sym.g_ptr_array_add
ldr r3, [r6, 0x24]
adds r3, 1
it eq
addeq r4, sp, 0x30
beq 0x59024
ldr r1, [0x00059100]
mov r0, r5
add r4, sp, 0x30
add r1, pc
bl sym.g_ptr_array_add
ldr r2, [0x00059104]
movs r1, 0x80
ldr r3, [r6, 0x24]
mov r0, r4
add r2, pc
bl sym.g_snprintf
mov r1, r4
mov r0, r5
--
bl sym.g_assertion_message
mov r0, r4
add sp, 0x14
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}
b.w sym.g_free
bl 0x76704
mov r2, r0
mov r3, r1
mov r0, sl
mov r1, fp
mov sl, r3
mov fp, r2
bl 0x76704
strd r0, r1, [sp, 8]
mov r2, fp
ldr r0, [0x000591f0]
mov r1, r4
mov r3, sl
str.w sb, [sp]
add r0, pc
bl sym.g_strdup_printf
mov r4, r0
b 0x59160
mov r2, r0
ldr r0, [0x000591f4]
mov r3, r1
vstr d1, [sp, 8]
mov r1, r4
str.w sb, [sp]
add r0, pc
bl sym.g_strdup_printf
mov r4, r0
b 0x59160
bl 0x76738
mov r2, r0
mov r3, r1
mov r0, sl
mov r1, fp
mov sl, r3
mov fp, r2
bl 0x76738
strd r0, r1, [sp, 8]
mov r2, fp
ldr r0, [0x000591f8]
mov r1, r4
mov r3, sl
str.w sb, [sp]
add r0, pc
bl sym.g_strdup_printf
mov r4, r0
b 0x59160
--
mov r0, r4
movs r1, 0
bl sym.g_strescape
ldr r2, [0x0005936c]
mov r1, r0
mov r4, r0
movs r3, 0
add r2, pc
mov r0, r2
bl sym.g_strconcat
mov r6, r0
mov r0, r5
bl sym.g_free
mov r0, r4
bl sym.g_free
ldr r0, [0x00059370]
mov r2, r7
ldrd r1, r3, [sp, 8]
str r6, [sp]
add r0, pc
bl sym.g_strdup_printf
mov r4, r0
mov r0, r7
--
mov r4, r3
bl sym.g_strescape
ldr r2, [sp, 0xc]
mov fp, r0
mov r1, fp
movs r3, 0
mov r0, r2
bl sym.g_strconcat
mov r3, r0
mov r0, r5
mov r5, r3
bl sym.g_free
mov r0, fp
bl sym.g_free
ldr r0, [0x00059424]
mov r2, sl
ldr r1, [sp, 8]
mov r3, r4
str r5, [sp]
add r0, pc
bl sym.g_strdup_printf
mov r3, r0
mov r0, r4
--
ldr r3, [sp, 0x44]
mov r6, r2
ldr.w fp, [sp, 0x40]
add r0, pc
ldr.w sl, [sp, 0x38]
ldr r5, [sp, 0x3c]
str r3, [sp, 0xc]
bl sym.g_string_new
mov r4, r0
cmp.w fp, 0
beq 0x594a4
mov r0, fp
bl sym.g_quark_to_string
ldr r2, [sp, 0xc]
mov r3, r0
ldr r1, [0x000594c4]
mov r0, r4
str r2, [sp]
mov r2, sl
add r1, pc
bl sym.g_string_append_printf
cbz r5, 0x594b2
ldr r0, [r5]
bl sym.g_quark_to_string
ldrd r1, r2, [r5, 4]
mov r3, r0
mov r0, r4
str r1, [sp]
ldr r1, [0x000594c8]
add r1, pc
bl sym.g_string_append_printf
ldr r5, [r4]
mov r1, sb
mov r0, r8
mov r3, r7
mov r2, r6
str r5, [sp]
bl sym.g_assertion_message
movs r1, 1
mov r0, r4
add sp, 0x14
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}
b.w sym.g_string_free
ldr r1, [0x000594cc]
mov r2, sl
add r1, pc
bl sym.g_string_append_printf
cmp r5, 0
bne 0x5946e
ldr r1, [0x000594d0]
mov r2, sl
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x59486
ldm r6!, {r1, r4, r5, r7}
--
and r2, r4, 1
it ne
movne r6, r5
cmp r3, 0
it eq
moveq r5, r3
eor fp, r2, 1
ldr r3, [sp, 0x44]
str r0, [sp, 0xc]
cbz r2, 0x5956e
ldr r2, [0x00059678]
add r2, pc
str r2, [sp, 0x10]
ldr r2, [0x0005967c]
str r3, [sp, 0x14]
add r2, pc
ldrd r2, r1, [r2, 4]
cbz r1, 0x59576
ldr r0, [0x00059680]
add r0, pc
bl sym.g_strdup_printf
ldr r3, [sp, 0x14]
mov r7, r0
--
mov r0, r5
add r3, pc
ldr r1, [r3, 0x10]
bl sym.g_pattern_match_simple
clz r0, r0
lsrs r0, r0, 5
cmp r0, fp
beq 0x59628
mov r0, r7
add sp, 0x1c
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}
b.w sym.g_free
ldr r2, [0x0005968c]
add r2, pc
str r2, [sp, 0x10]
b 0x5950c
cbz r2, 0x595a8
ldr r0, [0x00059690]
mov r1, r2
add r0, pc
bl sym.g_strdup_printf
ldr r3, [sp, 0x14]
mov r7, r0
--
add r0, pc
b 0x595d2
ldr r2, [0x00059698]
movs r1, 4
ldr r0, [0x0005969c]
add r2, pc
add r0, pc
bl sym.g_log
b 0x595b6
bl sym.g_test_trap_has_passed
cmp r0, 0
beq 0x59530
mov r0, r7
bl 0x58384
subs r4, r0, 0
ldr r0, [0x000596a0]
it ne
movne r4, 1
mov r1, r7
add r0, pc
bl sym.g_strdup_printf
mov r3, sl
str r0, [sp, 0x14]
--
mov r2, sb
ldr r0, [sp, 0xc]
mov r1, r8
bl sym.g_assertion_message
ldr r0, [sp, 0x14]
bl sym.g_free
cmp r6, 0
bne 0x59534
b 0x5954a
cmp r4, 0
beq 0x59662
ldr r2, [0x000596a4]
mov r3, r6
ldr r0, [0x000596a8]
mov r1, r7
add r2, pc
ldr r2, [r2, 0xc]
add r0, pc
str r2, [sp]
ldr r2, [sp, 0x10]
bl sym.g_strdup_printf
mov r3, sl
mov r6, r0
str r0, [sp]
mov r2, sb
ldr r0, [sp, 0xc]
mov r1, r8
bl sym.g_assertion_message
mov r0, r6
bl sym.g_free
cmp r5, 0
bne 0x5954c
b 0x59562
cbz r4, 0x59670
ldr r1, [0x000596ac]
mov r3, r5
ldr r0, [0x000596b0]
ldr r2, [sp, 0x10]
add r1, pc
ldr r1, [r1, 0x10]
add r0, pc
str r1, [sp]
mov r1, r7
bl sym.g_strdup_printf
mov r4, r0
mov r3, sl
--
add.w sl, sp, 4
movs r5, 0
add r6, pc
add.w sb, r6, 4
str r5, [sp, 4]
bl sym.g_get_prgname
ldr r1, [0x00059de4]
mov r3, r0
ldr r2, [0x00059de8]
str r5, [r7, 4]
add r1, pc
str r5, [r7]
ldm r1, {r0, r1}
add r2, pc
str.w r5, [r7, 7]
strb.w r1, [fp]
movs r1, 0x10
str.w r0, [r8]
mov r0, r8
cbz r3, 0x59dac
bl sym.g_snprintf
ldr r0, [r6]
bl sym.g_async_queue_lock
--
cmp r0, 0
ldr r0, [r6, 0x18]
blt 0x5a256
bl sym.g_async_queue_unlock
bl sym.g_get_prgname
ldr r2, [0x0005a2cc]
movs r1, 0
str.w r1, [sp, 0x31]
mov r3, r0
str.w r1, [sp, 0x2d]
add r2, pc
str r1, [sp, 0x34]
ldm.w r2, {r0, r1}
str r0, [sp, 0x28]
strb.w r1, [sp, 0x2c]
cbz r3, 0x5a202
ldr r2, [0x0005a2d0]
movs r1, 0x10
add r0, sp, 0x28
add r2, pc
bl sym.g_snprintf
ldr r1, [r4, 8]
cbnz r1, 0x5a244
--
ldr r3, [r0]
add r1, sp, 0x14
add r0, sp, 0x10
str r3, [sp, 0x10]
blx 0x17588
cmp r0, 0
beq 0x5b114
ldr r4, [r4, 4]
ldrd r2, r1, [r0, 0x10]
ldr r3, [r0, 0xc]
ldrd r6, r5, [r0, 4]
addw r1, r1, 0x76c
ldr r0, [r0]
adds r2, 1
cbz r4, 0x5b154
strd r0, r4, [sp, 8]
ldr r0, [0x0005b174]
str r6, [sp, 4]
str r5, [sp]
add r0, pc
bl sym.g_strdup_printf
add sp, 0x40
pop {r4, r5, r6, pc}
strd r6, r0, [sp, 4]
ldr r0, [0x0005b178]
str r5, [sp]
add r0, pc
bl sym.g_strdup_printf
add sp, 0x40
pop {r4, r5, r6, pc}
--
sub sp, 8
it ge
movge r1, 0x2b
umull r0, ip, r3, r2
it lt
movlt r1, 0x2d
lsr.w ip, ip, 5
umull r0, r3, r3, ip
movw r0, 0xb3c5
movt r0, 0x91a2
lsrs r3, r3, 5
rsb r3, r3, r3, lsl 4
sub.w r3, ip, r3, lsl 2
rsb ip, ip, ip, lsl 4
sub.w r4, r2, ip, lsl 2
umull r0, r2, r0, r2
ldr r0, [0x0005d994]
str r4, [sp]
add r0, pc
lsrs r2, r2, 0xb
bl sym.g_strdup_printf
mov r6, r0
bl sym.g_time_zone_new_identifier
--
cmp.w r8, 0
bne 0x6346a
ldr r2, [0x0006362c]
movs r3, 1
mov r0, r4
add r2, pc
bl sym.g_string_append_uri_escaped
cmp.w sl, -1
beq.w 0x63592
cmp.w sb, 0
beq.w 0x63612
mov r1, sl
mov r0, sb
bl 0x62f84
adds r0, 1
beq 0x63400
ldr r1, [0x00063630]
mov r2, sl
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
ldrb r3, [r6]
cmp r3, 0
--
bl sym.g_return_if_fail_warning
b 0x63430
ldr r2, [0x00063650]
ldr r1, [0x00063654]
ldr r0, [0x00063658]
add r2, pc
add r1, pc
add r0, pc
bl sym.g_return_if_fail_warning
b 0x63430
mov r0, r4
bl sym.g_string_append
cmp.w sl, -1
beq.w 0x635ae
cmp.w sb, 0
bne 0x633e8
ldr r1, [0x0006365c]
mov r2, sl
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
mov.w sb, 0
b 0x63268
--
bl sym.g_string_append
ldrd r3, r1, [r4, 4]
adds r2, r3, 1
cmp r2, r1
bhs.w 0x63604
str r2, [r4, 4]
movs r1, 0x5d
ldr r2, [r4]
strb r1, [r2, r3]
movs r1, 0
ldrd r2, r3, [r4]
strb r1, [r2, r3]
cmp.w sl, -1
beq.w 0x6324c
cmp.w sb, 0
bne.w 0x633e8
ldr r1, [0x00063660]
mov r2, sl
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x63258
ldr r2, [0x00063664]
--
movs r2, 0x3a
mov.w r1, -1
mov r0, r4
bl sym.g_string_insert_c
b 0x63354
ldr r2, [0x0006367c]
movs r3, 1
mov r0, r4
add r2, pc
bl sym.g_string_append_uri_escaped
b 0x634d4
movs r2, 0x5d
mov.w r1, -1
mov r0, r4
bl sym.g_string_insert_c
b 0x634f0
ldr r1, [0x00063680]
mov r2, sl
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
mov.w sb, 0
b 0x63262
--
cmp r4, 0
blt 0x64348
ldr r3, [sp, 0x14]
cmp r3, 0
beq 0x64366
cmp.w sb, 0
beq 0x643f4
movs r1, 0
mov r0, r5
bl sym.g_string_free
str.w r0, [sb]
mov r0, r4
add sp, 0x2c
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}
mov.w r1, -1
mov r0, r5
bl sym.g_string_insert_c
b 0x64204
ldr r1, [sp, 8]
mov r0, r5
bl sym.g_string_append_printf
b 0x64204
movs r2, 0x25
--
ldr r5, [r4]
str r0, [r4, 0x10]
b 0x651d6
ldr r6, [r4, 0x10]
ldrb r3, [r6]
cmp r3, 0
beq 0x652d0
cmp r3, 0x2f
beq 0x6529c
ldr r7, [r5, 0x10]
movs r1, 0x2f
mov r0, r7
blx 0x17054
cmp r0, 0
beq 0x652ee
subs r1, r0, r7
ldr r0, [0x00065328]
mov r3, r6
mov r2, r7
add r0, pc
bl sym.g_strdup_printf
mov r6, r0
ldr r0, [r4, 0x10]
--
ldr r0, [r5, 8]
bl sym.g_strdup
ldr r3, [r5, 0xc]
strd r0, r3, [r4, 8]
b 0x651be
mov r0, r6
bl sym.g_free
ldr r0, [r5, 0x10]
bl sym.g_strdup
ldr r3, [r4, 0x14]
str r0, [r4, 0x10]
cmp r3, 0
bne 0x652a2
ldr r0, [r5, 0x14]
bl sym.g_strdup
str r0, [r4, 0x14]
b 0x652a2
ldr r0, [0x0006532c]
mov r1, r6
add r0, pc
bl sym.g_strdup_printf
mov r6, r0
b 0x65290
--
beq 0x65ac8
subs r1, r4, r5
cbz r0, 0x65a50
subs r0, r0, r5
cmp r1, r0
it ge
movge r1, r0
mvn r3, 0x80000000
cmp r1, r3
it eq
moveq r1, -1
b 0x65b06
movs r4, 0
mov r0, r4
add sp, 0x18c
pop {r4, r5, pc}
ldr r0, [0x00065b88]
add.w r2, sp, 0x82
mov r1, r5
add r0, pc
bl sym.g_strdup_printf
mov r4, r0
mov r0, r4
--
bl sym.g_error_matches
mov r4, r0
mov r0, sb
bl sym.g_clear_error
cmp r4, 0
beq 0x663a0
cmp r5, 1
mov.w r5, 1
bne 0x662ec
ldr r0, [sp]
cmp r0, 0
beq 0x663a4
ldr r1, [0x00066428]
mov.w r2, -1
add r1, pc
bl sym.g_strsplit
mov r8, r0
ldr r0, [0x0006642c]
mov r1, r7
add r0, pc
bl sym.g_strdup_printf
ldr.w r4, [r8]
mov r6, r0
--
tbb [0x00066b50]
ldm r6!, {r2, r5, r7}
ldm r6!, {r0, r1, r4, r7}
ldm r6!, {r1, r3, r4}
movs r4, r0
ldrd r2, r3, [r7, 0x1b0]
cmp r4, r2
sbcs.w r3, r5, r3
bhs.w 0x66cce
ldr r2, [0x00066d0c]
mov r3, r4
ldr r1, [0x00066d10]
ldr r0, [0x00066d14]
add r2, pc
add r1, pc
add r0, pc
bl sym.g_dngettext
mov r1, r0
mov r2, r4
mov r0, r6
bl sym.g_string_printf
b 0x66c60
ldrd r2, r3, [r7, 0x120]
--
blo.w 0x66cdc
adds r1, 1
add.w ip, ip, 0x18
cmp r1, 6
bne 0x66ba4
add r7, lr
add.w r0, r7, 8
bl sym.glib_gettext
mov r1, r5
mov sl, r0
mov r0, r4
bl 0x765bc
vmov d8, r0, r1
ldrd r0, r1, [r7]
bl 0x765bc
vmov d16, r0, r1
mov r1, sl
mov r0, r6
vdiv.f64 d16, d8, d16
vmov r2, r3, d16
bl sym.g_string_printf
tst.w sb, 1
beq 0x66c60
--
mov.w r2, 0x3e8
movs r3, 0
mov r0, r4
mov r1, r5
bl 0x766c8
add.w r3, r2, 0x3e8
cmp.w r8, 1
bls 0x66cae
ldr r2, [0x00066d18]
ldr r1, [0x00066d1c]
ldr r0, [0x00066d20]
add r2, pc
add r1, pc
add r0, pc
bl sym.g_dngettext
mov r7, r0
ldr r0, [0x00066d24]
mov r3, r5
mov r2, r4
add r0, pc
bl sym.g_strdup_printf
ldr r1, [0x00066d28]
mov r4, r0
mov r0, r6
add r1, pc
bl sym.g_string_append
mov r1, r7
mov r2, r4
mov r0, r6
bl sym.g_string_append_printf
mov r0, r4
bl sym.g_free
--
ldrb.w r0, [sp, 0x42]
ldrb.w r3, [sp, 0x3c]
and r2, r2, 0xf
str r1, [sp, 0x14]
orr r2, r2, 0x40
strd r0, r4, [sp, 0x1c]
ldrb.w r0, [sp, 0x41]
ldrb.w r1, [sp, 0x3f]
str r5, [sp, 8]
str r0, [sp, 0x18]
ldr r0, [0x00066fc8]
ldrb.w r5, [sp, 0x44]
str r3, [sp, 4]
str r2, [sp, 0xc]
add r0, pc
str r1, [sp, 0x10]
ldrb.w r3, [sp, 0x3a]
ldrb.w r2, [sp, 0x39]
ldrb.w r1, [sp, 0x38]
str r5, [sp, 0x24]
bl sym.g_strdup_printf
add sp, 0x4c
pop {r4, r5, pc}
--
b 0x6733a
ldrb r4, [r0, r3]
movs r7, r0
cmp r7, 0x72
movs r7, r0
subs r0, r1, r1
movs r7, r0
addw r0, r8, 0x800
cmp r7, 0x5a
movs r7, r0
lsrs r0, r6, 0x15
movs r7, r0
invalid
push {r0, r1, r2, r3}
push {r4, r5, lr}
sub sp, 0xc
ldr r0, [sp, 0x18]
cbz r0, 0x673b4
add r1, sp, 0x1c
str r1, [sp, 4]
bl sym.g_strdup_vprintf
mov r4, r0
blx 0x17284
--
cmp r3, 0
beq.w 0x68cce
mov r2, r1
cmp r3, 0x65
it ne
cmpne r3, 0x2e
bne 0x68742
mov r1, r5
mov r0, r4
bl sym.g_string_append
b 0x68786
cmp r5, 0
bne.w 0x68bcc
movs r1, 0
mov r0, r6
bl sym.g_variant_get_string
ldr.w r1, [0x00068f54]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
mov r0, r4
add sp, 0x7c
pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}
cmp r5, 0
bne.w 0x68bc0
mov r0, r6
bl sym.g_variant_get_handle
ldr.w r1, [0x00068f58]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
mov r0, r6
bl sym.g_variant_get_int32
ldr.w r1, [0x00068f5c]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
cmp r5, 0
--
ldr.w r1, [0x00068f60]
mov r0, r5
add r1, pc
bl sym.g_str_has_suffix
cmp r0, 0
bne.w 0x68db4
mov r1, r5
mov r0, r4
bl sym.g_string_append
mov r0, r5
bl sym.g_free
b 0x68786
cmp r5, 0
bne.w 0x68be4
mov r0, r6
bl sym.g_variant_get_int16
ldr.w r1, sym.g_variant_type_info_member_info
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
cmp r5, 0
bne.w 0x68bd8
movs r1, 0
mov r0, r6
bl sym.g_variant_get_string
ldr.w r1, [0x00068f68]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
cmp r5, 0
bne.w 0x68c3c
mov r0, r6
bl sym.g_variant_get_uint16
ldr.w r1, [0x00068f6c]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
movs r1, 0
--
subs r2, r6, 7
cmp r2, 6
bhi.w 0x68f34
tbh [pc, r2, lsl 1]
lsls r7, r4, 3
lsls r5, r0, 4
lsls r1, r6, 3
lsls r3, r7, 3
lsls r5, r3, 3
lsls r3, r2, 3
lsls r4, r0, 3
cmp r5, 0
bne.w 0x68c30
mov r0, r6
bl sym.g_variant_get_uint64
mov r3, r1
ldr.w r1, [0x00068f78]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
cmp r5, 0
bne.w 0x68c24
mov r0, r6
bl sym.g_variant_get_uint32
ldr.w r1, [0x00068f7c]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
mov r0, r6
--
bhs.w 0x68d1a
ldr r1, [r4]
str r2, [r4, 4]
movs r2, 0x3e
strb r2, [r1, r3]
movs r1, 0
ldrd r2, r3, [r4]
strb r1, [r2, r3]
mov r0, r5
bl sym.g_variant_unref
b 0x68786
cmp r5, 0
bne.w 0x68c0a
mov r0, r6
bl sym.g_variant_get_int64
mov r3, r1
ldr.w r1, [0x00068f80]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
cmp r5, 0
bne.w 0x68bf0
mov r0, r6
bl sym.g_variant_get_byte
ldr.w r1, [0x00068f84]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68786
ldr r3, [r4, 4]
--
beq 0x68b68
ldrb r1, [r2, 1]!
cmp r1, 0
bne 0x68b5a
subs r0, 1
cmp r0, r3
bne.w 0x686d8
movs r1, 0
mov r0, r7
bl sym.g_strescape
movs r1, 0x27
mov r5, r0
mov r0, r7
blx sym.imp.wcscoll
cmp r0, 0
beq.w 0x68f26
ldr.w r1, [0x00068fa0]
mov r2, r5
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
mov r0, r5
bl sym.g_free
b 0x68786
movs r2, 0x7b
mov.w r1, -1
mov r0, r4
bl sym.g_string_insert_c
b 0x68a12
mov r0, r6
bl sym.g_variant_get_type_string
ldr r1, [0x00068fa4]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x687c6
ldr r1, [0x00068fa8]
--
mov r0, r4
add r1, pc
bl sym.g_string_append
b 0x68786
movs r5, 0x27
mov r8, r5
b 0x6887c
ldrd r2, r0, [r5, 4]
adds r1, r2, 1
cmp r1, r0
bhs 0x68cc0
str r1, [r5, 4]
ldr r1, [r5]
strb.w sb, [r1, r2]
ldrd r1, r2, [r5]
strb.w sl, [r1, r2]
b 0x688ea
mov r2, r6
mov r1, r4
mov r0, r5
bl sym.g_string_append_printf
b 0x688c8
movs r2, 0x5c
--
cmp r2, r1
bhs.w 0x68f02
ldr r1, [r4]
str r2, [r4, 4]
movs r2, 0x5d
strb r2, [r1, r3]
ldrd r2, r3, [r4]
strb.w sb, [r2, r3]
b 0x68786
ldr r1, [0x00068fd8]
mov r0, r4
add r1, pc
bl sym.g_string_append
b 0x687fc
mov r0, r6
bl sym.g_variant_get_type_string
ldr r1, [0x00068fdc]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x686fa
movs r2, 0x76
--
mov r1, sb
bne 0x68e62
ldrd r3, r1, [r4, 4]
adds r2, r3, 1
cmp r2, r1
bhs.w 0x68cfe
ldr r1, [r4]
str r2, [r4, 4]
movs r2, 0x7d
strb r2, [r1, r3]
mov.w r1, 0
ldrd r2, r3, [r4]
strb r1, [r2, r3]
b 0x68786
mov r0, r6
bl sym.g_variant_get_type_string
ldr r1, [0x00068fec]
mov r2, r0
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68c5a
movs r2, 0x5b
--
bl sym.g_string_insert_c
b 0x68d60
movs r2, 0x5d
mov.w r1, -1
mov r0, r4
bl sym.g_string_insert_c
b 0x68786
mov r2, r7
mov.w r1, -1
mov r0, r4
bl sym.g_string_insert_c
b 0x68e4e
movs r2, 2
movs r0, 1
mov r1, r3
b 0x68cd2
ldr r1, [0x00068ff0]
mov r2, r5
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
b 0x68b96
ldr r1, [0x00068ff4]
mov r2, r6
mov r0, r5
add r1, pc
bl sym.g_string_append_printf
b 0x688c8
nop
--
add r0, pc
b.w sym.g_strdup
b 0x6c1e0
movs r6, r0
ldr r0, [0x0006c934]
add r0, pc
b.w sym.g_strdup
b 0x6c1dc
movs r6, r0
ldr r0, [r0, 0xc]
cbz r0, 0x6c960
push {r4, lr}
ldr r3, [r0]
ldr r3, [r3]
blx r3
mov r4, r0
cbz r0, 0x6c95c
mov r1, r0
ldr r0, [0x0006c968]
add r0, pc
bl sym.g_strdup_printf
mov r3, r0
mov r0, r4
--
ldr r4, [r7, 0x3c]
movs r7, r0
udf 0x40
movs r6, r0
push.w {r4, r5, r6, r7, r8, sb, sl, lr}
mov r6, r1
sub sp, 8
mov r8, r0
movs r0, 0
mov r5, r2
mov r7, r3
ldr.w sb, [sp, 0x28]
ldr.w sl, [sp, 0x2c]
bl sym.g_string_new
ldrd r2, r3, [r6]
mov r4, r0
cmp r2, r3
beq 0x6d010
ldr r1, [0x0006d044]
add r1, pc
bl sym.g_string_append_printf
cbz r5, 0x6cfce
ldrd r2, r3, [r5]
cmp r2, r3
beq 0x6d028
ldr r1, [0x0006d048]
mov r0, r4
add r1, pc
bl sym.g_string_append_printf
ldrd r3, r1, [r4, 4]
adds r2, r3, 1
cmp r2, r1
bhs 0x6d01a
str r2, [r4, 4]
movs r1, 0x3a
ldr r2, [r4]
strb r1, [r2, r3]
movs r1, 0
ldrd r2, r3, [r4]
strb r1, [r2, r3]
mov r2, sl
mov r1, sb
mov r0, r4
bl sym.g_string_append_vprintf
bl sym.g_variant_parse_error_quark
ldr r3, [r4]
mov r1, r0
mov r2, r7
mov r0, r8
bl sym.g_set_error_literal
movs r1, 1
mov r0, r4
add sp, 8
pop.w {r4, r5, r6, r7, r8, sb, sl, lr}
b.w sym.g_string_free
ldr r1, [0x0006d04c]
add r1, pc
bl sym.g_string_append_printf
b 0x6cfba
movs r2, 0x3a
--
movs r6, r0
blt 0x6d13c
movs r6, r0
str r7, [sp, 0x3e0]
movs r0, r0
bgt 0x6d0f4
movs r6, r0
bgt 0x6d0c4
movs r6, r0
mov r2, r1
ldr r1, [r0, 0x10]
cbz r1, 0x6d1ca
push {r4, lr}
ldr r0, [r0, 0xc]
bl 0x6d088
mov r4, r0
cbz r0, 0x6d1c6
mov r1, r0
ldr r0, [0x0006d1d4]
add r0, pc
bl sym.g_strdup_printf
mov r3, r0
mov r0, r4
--
add r0, pc
blx sym.imp.wcscoll
cbz r0, 0x6d25c
ldr r3, [r4, 0x10]
mov r1, r5
ldr r0, [r3]
ldr r3, [r0]
ldr r3, [r3]
blx r3
mov r5, r0
cbz r0, 0x6d26e
ldr r3, [r4, 0x14]
cmp r3, 0
ble 0x6d248
ldr r1, [0x0006d278]
add r1, pc
ldr r0, [0x0006d27c]
mov r3, r5
mov r2, r6
add r0, pc
bl sym.g_strdup_printf
mov r4, r0
mov r0, r5
--
add r1, pc
bl sym.g_return_if_fail_warning
mov.w r0, -1
pop {r3, pc}
lsrs r6, r5, 0x11
movs r7, r0
lsls r0, r4, 0xf
movs r0, r0
ldr r1, [0x00072208]
movs r0, r0
strh r2, [r5, 2]
movs r0, r0
adr r1, 0x110
movs r6, r0
push {r0, r1, r2, r3}
push {lr}
sub sp, 0xc
add r1, sp, 0x10
ldr r0, [r1], 4
str r1, [sp, 4]
bl sym.g_vprintf
add sp, 0xc
ldr lr, [sp], 4
--
add r1, pc
push {r3, lr}
add r0, pc
adds r1, 0xc
add r2, pc
bl sym.g_return_if_fail_warning
mov.w r0, -1
pop {r3, pc}
adr r0, 0x3f0
movs r6, r0
ldr r1, [0x00072114]
movs r0, r0
strh r0, [r3]
movs r0, r0
push {r1, r2, r3}
push {lr}
sub sp, 8
add r2, sp, 0xc
ldr r1, [r2], 4
str r2, [sp, 4]
bl sym.g_vfprintf
add sp, 8
ldr lr, [sp], 4
--
pop {r3, pc}
nop
adr r0, 0x2b0
movs r6, r0
str r6, [r5, 4]
movs r6, r0
ldr r0, [0x00072438]
movs r0, r0
adr r0, 0x250
movs r6, r0
ldrb r6, [r6, 0x1e]
movs r0, r0
ldr r0, [0x000723e4]
movs r0, r0
push {r1, r2, r3}
push {lr}
sub sp, 8
add r2, sp, 0xc
ldr r1, [r2], 4
str r2, [sp, 4]
bl sym.g_vsprintf
add sp, 8
ldr lr, [sp], 4
--
mov.w r0, -1
pop {r4, r5, r6, pc}
adr r0, 0xd0
movs r6, r0
ldr r7, [sp, 0x2f8]
movs r6, r0
ldr r0, [0x000722d8]
movs r0, r0
adr r0, 0x48
movs r6, r0
ldrb r4, [r6, 0x1c]
movs r0, r0
ldr r0, [0x0007225c]
movs r0, r0
push {r2, r3}
push {lr}
sub sp, 0xc
add r3, sp, 0x10
ldr r2, [r3], 4
str r3, [sp, 4]
bl sym.g_vsnprintf
add sp, 0xc
ldr lr, [sp], 4
--
blx 0x17864
ldr r3, [r0]
cmp r3, 4
it eq
cmpeq r4, -1
beq 0x725da
mov r0, r4
pop {r4, r5, r6, pc}
push {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
b 0x72612
blx 0x17864
ldr r3, [r0]
cmp r3, 0x10
it ne
cmpne r3, 4
bne 0x7261e
mov r1, r5
mov r0, r6
blx sym.imp.vfprintf
subs r4, r0, 0
blt 0x72604
--
dmb ish
ldr r3, [r0]
mov r5, r1
dmb ish
cbnz r3, 0x755a8
mov r4, r0
ldr r0, [r0, 4]
bl 0x75058
dmb ish
mov r3, r0
ldrex r2, [r4]
cmp r2, 0
bne 0x755a2
strex r1, r3, [r4]
cmp r1, 0
bne 0x75592
dmb ish
bne 0x755bc
ldr r0, [r3]
mov r1, r5
blx sym.imp.vasprintf
cbz r0, 0x755ba
ldr r1, [0x000755c4]
--
dmb ish
cbnz r4, 0x755fc
ldr r0, [r0, 4]
bl 0x75058
dmb ish
mov r4, r0
ldrex r3, [r5]
cmp r3, 0
bne 0x755f6
strex r2, r4, [r5]
cmp r2, 0
bne 0x755e6
dmb ish
bne 0x75628
ldr r0, [r4]
blx sym.imp.pthread_attr_destroy
mov r1, r6
mov r3, r0
ldr r0, [r4]
mov r4, r3
blx sym.imp.vasprintf
cbz r0, 0x75618
ldr r1, [0x00075630]

[*] Function printf used 166 times libglib-2.0.so.0.7200.3