Function at 0x415cd0
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47f781
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb8
push ebx
push esi
xor ebx, ebx
mov esi, ecx
mov dword [ebp - 0x10], ebx
lea ecx, [ebp - 0x90]
push ebx
mov dword [ebp - 0x60], ebx
call fcn.00462250
push ebx
lea ecx, [ebp - 0xa8]
mov dword [ebp - 4], ebx
call fcn.00462250
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 1
push eax
push 1
push ebx
push ebx
mov ecx, esi
mov byte [ebp - 0x2c], bl
call fcn.00415400
mov ecx, esi
test al, al
jne 0x415d4e
lea eax, [ebp - 0x90]
push eax
push ebx
push ebx
push ebx
call fcn.00415400
test al, al
jne 0x415d73
xor bl, bl
jmp 0x417030
lea eax, [ebp - 0xa8]
push eax
push 0
push 0
push 0
call fcn.00415400
mov ecx, dword [ebp - 0x2c]
test al, al
movzx ecx, cl
mov edx, 1
cmovne ecx, edx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x78], 0
push edi
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
lea eax, [ebp - 0x78]
mov byte [ebp - 4], 3
push eax
call fcn.004080e0
mov edi, dword [ebp - 0x48]
cmp edi, 7
jb 0x415de5
cmp edi, 0x10
mov dword [ebp - 0x4c], 7
push 7
lea esi, [ebp - 0x5c]
cmovae esi, dword [ebp - 0x5c]
push str.default
push esi
call fcn.00445f10
add esp, 0xc
mov byte [esi + 7], 0
jmp 0x415e7d
mov ecx, edi
mov eax, SysReAllocString
shr ecx, 1
sub eax, ecx
cmp edi, eax
jbe 0x415dfb
mov ecx, SysReAllocString
jmp 0x415e08
lea eax, [edi + ecx]
mov ecx, 0xf
cmp eax, ecx
cmova ecx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0xac], ecx
push eax
lea ecx, [ebp - 0x5c]
call fcn.00410340
mov dword [ebp - 0x4c], 7
mov esi, eax
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x48], eax
mov eax, dword [str.default]
mov dword [esi], eax
mov ax, word [0x488f6c]
mov word [esi + 4], ax
mov al, byte [0x488f6e]
mov byte [esi + 6], al
mov byte [esi + 7], 0
cmp edi, 0x10
jb 0x415e7a
mov ecx, dword [ebp - 0x5c]
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x415e70
mov ecx, dword [ecx - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4170a0
push edi
push ecx
call fcn.0041a2f9
add esp, 8
mov dword [ebp - 0x5c], esi
mov esi, dword [ebp + 8]
pop edi
test esi, esi
je 0x416049
push str.navaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x415ed2
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
lea eax, [ebp - 0x28]
mov ebx, 1
jmp 0x415efd
lea eax, [ebp - 0x44]
push eax
push str.navaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
mov ebx, 2
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test bl, 2
je 0x415f1b
and ebx, 0xfffffffd
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test bl, 1
je 0x415f61
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffffe
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x415f61
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x415f57
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41705a
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x416049
cmp byte [ebp - 0x2c], 0
je 0x416049
push str.navaddr
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x415fbc
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
lea eax, [ebp - 0x28]
or ebx, 4
jmp 0x415fe5
lea eax, [ebp - 0x44]
push eax
push str.navaddr
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 8
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test bl, 8
je 0x416003
and ebx, 0xfffffff7
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test bl, 4
je 0x416049
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffffb
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416049
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41603f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41705f
push edx
push ecx
call fcn.0041a2f9
add esp, 8
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x416215
push str.homaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x41609b
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
lea eax, [ebp - 0x28]
or ebx, 0x10
jmp 0x4160c4
lea eax, [ebp - 0x44]
push eax
push str.homaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x20
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test bl, 0x20
je 0x4160e2
and ebx, 0xffffffdf
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test bl, 0x10
je 0x416128
mov edx, dword [ebp - 0x14]
and ebx, 0xffffffef
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416128
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41611e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417064
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x416215
cmp byte [ebp - 0x2c], 0
je 0x416215
push str.homaddr
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416183
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
lea eax, [ebp - 0x28]
or ebx, 0x40
jmp 0x4161af
lea eax, [ebp - 0x44]
push eax
push str.homaddr
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x80
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test bl, bl
jns 0x4161cf
and ebx, 0xffffff7f
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test bl, 0x40
je 0x416215
mov edx, dword [ebp - 0x14]
and ebx, 0xffffffbf
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416215
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41620b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417069
push edx
push ecx
call fcn.0041a2f9
add esp, 8
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x416400
push str.ntpaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x41626a
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
lea eax, [ebp - 0x28]
or ebx, 0x100
jmp 0x416296
lea eax, [ebp - 0x44]
push eax
push str.ntpaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x200
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x200
je 0x4162ba
and ebx, 0xfffffdff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x100
je 0x416306
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffeff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416306
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4162fc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41706e
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x416400
cmp byte [ebp - 0x2c], 0
je 0x416400
push str.ntpaddr
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416364
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
lea eax, [ebp - 0x28]
or ebx, 0x400
jmp 0x416390
lea eax, [ebp - 0x44]
push eax
push str.ntpaddr
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x800
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x800
je 0x4163b4
and ebx, 0xfffff7ff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x400
je 0x416400
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffbff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416400
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4163f6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417073
push edx
push ecx
call fcn.0041a2f9
add esp, 8
mov esi, dword [ebp + 0x14]
test esi, esi
je 0x41661b
push str.addr
push 0x488ffc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416461
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
lea eax, [ebp - 0x28]
or ebx, 0x1000
jmp 0x416499
lea eax, [ebp - 0x44]
push eax
push str.addr
push 0x488ffc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x2000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x2000
je 0x4164bd
and ebx, 0xffffdfff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x1000
je 0x416509
mov edx, dword [ebp - 0x14]
and ebx, 0xffffefff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416509
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4164ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417078
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x41661b
cmp byte [ebp - 0x2c], 0
je 0x41661b
push str.addr
push 0x488ffc
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416573
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
lea eax, [ebp - 0x28]
or ebx, 0x4000
jmp 0x4165ab
lea eax, [ebp - 0x44]
push eax
push str.addr
push 0x488ffc
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x8000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x8000
je 0x4165cf
and ebx, 0xffff7fff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x4000
je 0x41661b
mov edx, dword [ebp - 0x14]
and ebx, 0xffffbfff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x41661b
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x416611
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41707d
push edx
push ecx
call fcn.0041a2f9
add esp, 8
mov esi, dword [ebp + 0x18]
test esi, esi
je 0x41680a
push str.icon
push 0x488ffc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x41668b
push 0
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x483741
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.00410500
lea eax, [ebp - 0x44]
or ebx, 0x10000
jmp 0x4166c3
lea eax, [ebp - 0x28]
push eax
push str.icon
push 0x488ffc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x20000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x20000
je 0x4166e7
and ebx, 0xfffdffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x10000
je 0x416733
mov edx, dword [ebp - 0x30]
and ebx, 0xfffeffff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416733
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x416729
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417082
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x41680a
cmp byte [ebp - 0x2c], 0
je 0x41680a
push str.icon
push 0x488ffc
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x41678e
push 0x483741
lea ecx, [ebp - 0x44]
call fcn.00413a90
or ebx, 0x40000
jmp 0x4167c6
lea eax, [ebp - 0x28]
push eax
push str.icon
push 0x488ffc
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x80000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x80000
je 0x4167ea
and ebx, 0xfff7ffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x40000
je 0x41680a
and ebx, 0xfffbffff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov esi, dword [ebp + 0x1c]
test esi, esi
je 0x4169f9
push 0x489010
push 0x488ffc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x41687a
push 0
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x483741
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.00410500
lea eax, [ebp - 0x44]
or ebx, 0x100000
jmp 0x4168b2
lea eax, [ebp - 0x28]
push eax
push 0x489010
push 0x488ffc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x200000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x200000
je 0x4168d6
and ebx, 0xffdfffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x100000
je 0x416922
mov edx, dword [ebp - 0x30]
and ebx, 0xffefffff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416922
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x416918
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417087
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x4169f9
cmp byte [ebp - 0x2c], 0
je 0x4169f9
push 0x489010
push 0x488ffc
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x41697d
push 0x483741
lea ecx, [ebp - 0x44]
call fcn.00413a90
or ebx, 0x400000
jmp 0x4169b5
lea eax, [ebp - 0x28]
push eax
push 0x489010
push 0x488ffc
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x800000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x800000
je 0x4169d9
and ebx, 0xff7fffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x400000
je 0x4169f9
and ebx, 0xffbfffff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov esi, dword [ebp + 0x20]
test esi, esi
je 0x416be8
push 0x489018
push 0x488ffc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416a69
push 0
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x483741
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.00410500
lea eax, [ebp - 0x44]
or ebx, 0x1000000
jmp 0x416aa1
lea eax, [ebp - 0x28]
push eax
push 0x489018
push 0x488ffc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x2000000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x2000000
je 0x416ac5
and ebx, 0xfdffffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x1000000
je 0x416b11
mov edx, dword [ebp - 0x30]
and ebx, 0xfeffffff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416b11
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x416b07
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41708c
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x416be8
cmp byte [ebp - 0x2c], 0
je 0x416be8
push 0x489018
push 0x488ffc
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416b6c
push 0x483741
lea ecx, [ebp - 0x44]
call fcn.00413a90
or ebx, 0x4000000
jmp 0x416ba4
lea eax, [ebp - 0x28]
push eax
push 0x489018
push 0x488ffc
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x8000000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x8000000
je 0x416bc8
and ebx, 0xf7ffffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x4000000
je 0x416be8
and ebx, 0xfbffffff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov esi, dword [ebp + 0x24]
test esi, esi
je 0x416d94
push str.post
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416c4c
push 0
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x483741
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.00410500
lea eax, [ebp - 0x44]
or ebx, 0x10000000
jmp 0x416c78
lea eax, [ebp - 0x28]
push eax
push str.post
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x20000000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00413db0
test ebx, 0x20000000
je 0x416c9c
and ebx, 0xdfffffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x10000000
je 0x416ce8
mov edx, dword [ebp - 0x30]
and ebx, 0xefffffff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x416ce8
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x416cde
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417091
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x416d94
cmp byte [ebp - 0x2c], 0
je 0x416d94
push str.post
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416d37
push 0x483741
lea ecx, [ebp - 0x44]
call fcn.00413a90
or ebx, 0x40000000
jmp 0x416d63
lea eax, [ebp - 0x28]
push eax
push str.post
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.00462bd0
mov ecx, eax
call fcn.00463be0
or ebx, 0x80000000
push eax
mov ecx, esi
call fcn.00413db0
test ebx, ebx
jns 0x416d7d
lea ecx, [ebp - 0x28]
and ebx, 0x7fffffff
call fcn.00402700
mov dword [ebp - 4], 3
test ebx, 0x40000000
je 0x416d94
lea ecx, [ebp - 0x44]
call fcn.00402700
mov esi, dword [ebp + 0x28]
test esi, esi
je 0x416fa2
push 5
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push str.store
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.00410500
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x14
push eax
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.004628a0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416e22
push 0
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push 0x483741
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00410500
lea eax, [ebp - 0x28]
mov ebx, 1
jmp 0x416e4f
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.004628a0
mov ecx, eax
call fcn.004628a0
mov ecx, eax
call fcn.00463be0
mov ebx, 2
push eax
mov ecx, esi
mov dword [ebp - 0x60], ebx
call fcn.00413db0
test bl, 2
je 0x416e70
and ebx, 0xfffffffd
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x60], ebx
call fcn.00402700
mov dword [ebp - 4], 0x14
test bl, 1
je 0x416eb6
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffffe
mov dword [ebp - 0x60], ebx
cmp edx, 0x10
jb 0x416eb6
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x416eac
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417096
push edx
push ecx
call fcn.0041a2f9
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x416f61
cmp byte [ebp - 0x2c], 0
je 0x416f5b
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.004628a0
mov ecx, eax
call fcn.004647f0
test al, al
je 0x416f01
push 0x483741
lea ecx, [ebp - 0x28]
call fcn.00413a90
or ebx, 4
jmp 0x416f2c
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004628a0
mov ecx, eax
call fcn.004628a0
mov ecx, eax
call fcn.00463be0
or ebx, 8
push eax
mov ecx, esi
call fcn.00413db0
test bl, 8
je 0x416f47
lea ecx, [ebp - 0xc4]
and ebx, 0xfffffff7
call fcn.00402700
mov dword [ebp - 4], 0x14
test bl, 4
je 0x416f5b
lea ecx, [ebp - 0x28]
call fcn.00402700
cmp dword [esi + 0x10], 0
je 0x416f6e
lea eax, [ebp - 0x78]
push eax
push esi
call fcn.00422e80
add esp, 8
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x416fa2
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x416f98
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41709b
push edx
push ecx
call fcn.0041a2f9
add esp, 8
mov edx, dword [ebp - 0x48]
mov bl, 1
cmp edx, 0x10
jb 0x416fd8
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x416fce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4170a0
push edx
push ecx
call fcn.0041a2f9
add esp, 8
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
cmp edx, 0x10
jb 0x41701e
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x417014
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4170a0
push edx
push ecx
call fcn.0041a2f9
add esp, 8
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea ecx, [ebp - 0xa8]
call fcn.004626c0
lea ecx, [ebp - 0x90]
call fcn.004626c0
mov ecx, dword [ebp - 0xc]
mov al, bl
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x24
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
call fcn.00448ebf
int3