Function at 0x419600
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48c8bd
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xd0
push ebx
push esi
xor ebx, ebx
mov esi, ecx
mov dword [ebp - 0x10], ebx
lea ecx, [ebp - 0x90]
push ebx
mov dword [ebp - 0x2c], ebx
call fcn.0046f150
push ebx
lea ecx, [ebp - 0xdc]
mov dword [ebp - 4], ebx
call fcn.0046f150
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 1
push eax
push 1
push ebx
push ebx
mov ecx, esi
call fcn.00418cb0
mov ecx, esi
test al, al
jne 0x419686
lea eax, [ebp - 0x90]
push eax
push ebx
push ebx
push ebx
call fcn.00418cb0
test al, al
jne 0x41967b
xor bl, bl
jmp 0x41ab84
lea eax, [ebp - 0x90]
mov dword [ebp - 0x48], eax
jmp 0x4196ac
lea eax, [ebp - 0xdc]
push eax
push 0
push 0
push 0
call fcn.00418cb0
test al, al
lea ecx, [ebp - 0xdc]
lea edx, [ebp - 0x90]
cmove ecx, edx
mov dword [ebp - 0x48], 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 - 0x60], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
lea eax, [ebp - 0x78]
mov byte [ebp - 4], 3
push eax
call fcn.0040d6e0
mov edi, dword [ebp - 0x4c]
cmp edi, 7
jb 0x41971e
cmp edi, 0x10
mov dword [ebp - 0x50], 7
push 7
lea esi, [ebp - 0x60]
cmovae esi, dword [ebp - 0x60]
push str.default
push esi
call fcn.00452df0
add esp, 0xc
mov byte [esi + 7], 0
jmp 0x4197b6
mov ecx, edi
mov eax, SysReAllocString
shr ecx, 1
sub eax, ecx
cmp edi, eax
jbe 0x419734
mov ecx, SysReAllocString
jmp 0x419741
lea eax, [ecx + edi]
mov ecx, 0xf
cmp eax, ecx
cmova ecx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x94], ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00405ef0
mov dword [ebp - 0x50], 7
mov esi, eax
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x4c], eax
mov eax, dword [str.default]
mov dword [esi], eax
mov ax, word [0x49ad6c]
mov word [esi + 4], ax
mov al, byte [0x49ad6e]
mov byte [esi + 6], al
mov byte [esi + 7], 0
cmp edi, 0x10
jb 0x4197b3
mov ecx, dword [ebp - 0x60]
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x4197a9
mov ecx, dword [ecx - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abf9
push edi
push ecx
call fcn.0041dbcb
add esp, 8
mov dword [ebp - 0x60], esi
mov esi, dword [ebp + 8]
test esi, esi
je 0x419974
push str.navaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41980a
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 0x419835
lea eax, [ebp - 0x44]
push eax
push str.navaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
mov ebx, 2
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test bl, 2
je 0x419853
and ebx, 0xfffffffd
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test bl, 1
je 0x419899
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffffe
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x419899
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41988f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abae
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
mov edi, dword [ebp - 0x48]
jne 0x419977
push str.navaddr
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x4198e9
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 0x41990e
lea eax, [ebp - 0x44]
mov ecx, edi
push eax
push str.navaddr
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 8
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test bl, 8
je 0x41992c
and ebx, 0xfffffff7
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test bl, 4
je 0x419977
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffffb
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x419977
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x419968
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abb3
push edx
push ecx
call fcn.0041dbcb
add esp, 8
jmp 0x419977
mov edi, dword [ebp - 0x48]
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x419b31
push str.homaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x4199c9
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 0x4199f2
lea eax, [ebp - 0x44]
push eax
push str.homaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x20
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test bl, 0x20
je 0x419a10
and ebx, 0xffffffdf
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test bl, 0x10
je 0x419a56
mov edx, dword [ebp - 0x14]
and ebx, 0xffffffef
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x419a56
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x419a4c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abb8
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x419b31
push str.homaddr
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x419aa3
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 0x419acb
lea eax, [ebp - 0x44]
mov ecx, edi
push eax
push str.homaddr
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x80
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test bl, bl
jns 0x419aeb
and ebx, 0xffffff7f
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test bl, 0x40
je 0x419b31
mov edx, dword [ebp - 0x14]
and ebx, 0xffffffbf
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x419b31
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x419b27
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abbd
push edx
push ecx
call fcn.0041dbcb
add esp, 8
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x419d0a
push str.ntpaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x419b86
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 0x419bb2
lea eax, [ebp - 0x44]
push eax
push str.ntpaddr
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x200
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x200
je 0x419bd6
and ebx, 0xfffffdff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x100
je 0x419c22
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffeff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x419c22
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x419c18
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abc2
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x419d0a
push str.ntpaddr
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x419c72
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 0x419c9a
lea eax, [ebp - 0x44]
mov ecx, edi
push eax
push str.ntpaddr
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x800
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x800
je 0x419cbe
and ebx, 0xfffff7ff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x400
je 0x419d0a
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffbff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x419d0a
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x419d00
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abc7
push edx
push ecx
call fcn.0041dbcb
add esp, 8
mov esi, dword [ebp + 0x14]
test esi, esi
je 0x419f13
push str.addr
push 0x49adfc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x419d6b
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 0x419da3
lea eax, [ebp - 0x44]
push eax
push str.addr
push 0x49adfc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x2000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x2000
je 0x419dc7
and ebx, 0xffffdfff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x1000
je 0x419e13
mov edx, dword [ebp - 0x14]
and ebx, 0xffffefff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x419e13
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x419e09
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abcc
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x419f13
push str.addr
push 0x49adfc
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x419e6f
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 0x419ea3
lea eax, [ebp - 0x44]
mov ecx, edi
push eax
push str.addr
push 0x49adfc
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x8000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x8000
je 0x419ec7
and ebx, 0xffff7fff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x4000
je 0x419f13
mov edx, dword [ebp - 0x14]
and ebx, 0xffffbfff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x419f13
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x419f09
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abd1
push edx
push ecx
call fcn.0041dbcb
add esp, 8
mov esi, dword [ebp + 0x18]
test esi, esi
je 0x41a0f0
push str.icon
push 0x49adfc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x419f83
push 0
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x497505
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.0040e6f0
lea eax, [ebp - 0x44]
or ebx, 0x10000
jmp 0x419fbb
lea eax, [ebp - 0x28]
push eax
push str.icon
push 0x49adfc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x20000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x20000
je 0x419fdf
and ebx, 0xfffdffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x10000
je 0x41a02b
mov edx, dword [ebp - 0x30]
and ebx, 0xfffeffff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x41a02b
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41a021
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abd6
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x41a0f0
push str.icon
push 0x49adfc
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a078
push 0x497505
lea ecx, [ebp - 0x44]
call fcn.00417620
or ebx, 0x40000
jmp 0x41a0ac
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
push str.icon
push 0x49adfc
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x80000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x80000
je 0x41a0d0
and ebx, 0xfff7ffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x40000
je 0x41a0f0
and ebx, 0xfffbffff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov esi, dword [ebp + 0x1c]
test esi, esi
je 0x41a2cd
push 0x49ae10
push 0x49adfc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a160
push 0
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x497505
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.0040e6f0
lea eax, [ebp - 0x44]
or ebx, 0x100000
jmp 0x41a198
lea eax, [ebp - 0x28]
push eax
push 0x49ae10
push 0x49adfc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x200000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x200000
je 0x41a1bc
and ebx, 0xffdfffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x100000
je 0x41a208
mov edx, dword [ebp - 0x30]
and ebx, 0xffefffff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x41a208
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41a1fe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abdb
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x41a2cd
push 0x49ae10
push 0x49adfc
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a255
push 0x497505
lea ecx, [ebp - 0x44]
call fcn.00417620
or ebx, 0x400000
jmp 0x41a289
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
push 0x49ae10
push 0x49adfc
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x800000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x800000
je 0x41a2ad
and ebx, 0xff7fffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x400000
je 0x41a2cd
and ebx, 0xffbfffff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov esi, dword [ebp + 0x20]
test esi, esi
je 0x41a4aa
push 0x49ae18
push 0x49adfc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a33d
push 0
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x497505
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.0040e6f0
lea eax, [ebp - 0x44]
or ebx, 0x1000000
jmp 0x41a375
lea eax, [ebp - 0x28]
push eax
push 0x49ae18
push 0x49adfc
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x2000000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x2000000
je 0x41a399
and ebx, 0xfdffffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x1000000
je 0x41a3e5
mov edx, dword [ebp - 0x30]
and ebx, 0xfeffffff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x41a3e5
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41a3db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abe0
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x41a4aa
push 0x49ae18
push 0x49adfc
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a432
push 0x497505
lea ecx, [ebp - 0x44]
call fcn.00417620
or ebx, 0x4000000
jmp 0x41a466
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
push 0x49ae18
push 0x49adfc
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x8000000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x8000000
je 0x41a48a
and ebx, 0xf7ffffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x4000000
je 0x41a4aa
and ebx, 0xfbffffff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov esi, dword [ebp + 0x24]
test esi, esi
je 0x41a644
push str.post
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a50e
push 0
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x497505
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.0040e6f0
lea eax, [ebp - 0x44]
or ebx, 0x10000000
jmp 0x41a53a
lea eax, [ebp - 0x28]
push eax
push str.post
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x20000000
push eax
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00417660
test ebx, 0x20000000
je 0x41a55e
and ebx, 0xdfffffff
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], ebx
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x10000000
je 0x41a5aa
mov edx, dword [ebp - 0x30]
and ebx, 0xefffffff
mov dword [ebp - 0x10], ebx
cmp edx, 0x10
jb 0x41a5aa
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41a5a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abe5
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x41a644
push str.post
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a5eb
push 0x497505
lea ecx, [ebp - 0x44]
call fcn.00417620
or ebx, 0x40000000
jmp 0x41a613
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
push str.post
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00470ae0
or ebx, 0x80000000
push eax
mov ecx, esi
call fcn.00417660
test ebx, ebx
jns 0x41a62d
lea ecx, [ebp - 0x28]
and ebx, 0x7fffffff
call fcn.00404210
mov dword [ebp - 4], 3
test ebx, 0x40000000
je 0x41a644
lea ecx, [ebp - 0x44]
call fcn.00404210
mov esi, dword [ebp + 0x28]
test esi, esi
je 0x41a852
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.0040e6f0
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x14
push eax
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046f7a0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a6d2
push 0
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push 0x497505
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.0040e6f0
lea eax, [ebp - 0x28]
mov ebx, 1
jmp 0x41a6ff
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046f7a0
mov ecx, eax
call fcn.00470ae0
mov ebx, 2
push eax
mov ecx, esi
mov dword [ebp - 0x2c], ebx
call fcn.00417660
test bl, 2
je 0x41a720
and ebx, 0xfffffffd
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x2c], ebx
call fcn.00404210
mov dword [ebp - 4], 0x14
test bl, 1
je 0x41a766
mov edx, dword [ebp - 0x14]
and ebx, 0xfffffffe
mov dword [ebp - 0x2c], ebx
cmp edx, 0x10
jb 0x41a766
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41a75c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abea
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [esi + 0x10], 0
jne 0x41a80b
lea eax, [ebp - 0x44]
mov ecx, edi
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046f7a0
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a7a3
push 0x497505
lea ecx, [ebp - 0x28]
call fcn.00417620
or ebx, 4
jmp 0x41a7ca
lea eax, [ebp - 0xc4]
mov ecx, edi
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046f7a0
mov ecx, eax
call fcn.00470ae0
or ebx, 8
push eax
mov ecx, esi
mov dword [ebp - 0x2c], ebx
call fcn.00417660
test bl, 8
je 0x41a7eb
and ebx, 0xfffffff7
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x2c], ebx
call fcn.00404210
mov dword [ebp - 4], 0x14
test bl, 4
je 0x41a805
and ebx, 0xfffffffb
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x2c], ebx
call fcn.00404210
cmp dword [esi + 0x10], 0
je 0x41a818
lea eax, [ebp - 0x78]
push eax
push esi
call fcn.00422420
add esp, 8
mov edx, dword [ebp - 0x30]
mov byte [ebp - 4], 3
cmp edx, 0x10
jb 0x41a855
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41a846
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abef
push edx
push ecx
call fcn.0041dbcb
add esp, 8
jmp 0x41a855
mov ebx, dword [ebp - 0x2c]
mov esi, dword [ebp + 0x2c]
test esi, esi
je 0x41aaf5
mov dword [ebp - 0xac], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0xf
mov byte [ebp - 0xac], 0
push str.showlist
lea eax, [ebp - 0x78]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
jne 0x41a8f7
push str.showlist
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x90]
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00472040
test eax, eax
jle 0x41a8f7
cmp dword [ebp - 0x64], 0x10
lea eax, [ebp - 0x78]
push dword [ebp - 0x68]
cmovae eax, dword [ebp - 0x78]
lea ecx, [ebp - 0xac]
push eax
call fcn.0040e6f0
lea edi, [ebp - 0x90]
jmp 0x41a919
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
push dword [ebp - 0x50]
lea ecx, [ebp - 0xac]
jb 0x41a913
push dword [ebp - 0x60]
call fcn.0040e6f0
jmp 0x41a91c
push eax
call fcn.0040e6f0
mov dword [ebp - 0x48], edi
cmp dword [ebp - 0x9c], 0
je 0x41aabb
push str.showlist
lea eax, [ebp - 0xac]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.004716f0
test al, al
jne 0x41aabb
push str.showlist
lea eax, [ebp - 0xac]
mov ecx, edi
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.00472040
xor edi, edi
mov dword [ebp + 8], eax
test eax, eax
jle 0x41aabb
mov ecx, dword [ebp - 0x48]
lea eax, [ebp - 0xac]
push edi
push str.showlist
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046f830
mov ecx, eax
call fcn.004716f0
test al, al
je 0x41a9de
push 0
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x28]
push 0x497505
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.0040e6f0
lea eax, [ebp - 0x28]
or ebx, 0x10
jmp 0x41aa12
mov ecx, dword [ebp - 0x48]
lea eax, [ebp - 0xc4]
push eax
push edi
push str.showlist
lea eax, [ebp - 0xac]
push eax
call fcn.0046f7a0
mov ecx, eax
call fcn.0046fad0
mov ecx, eax
call fcn.0046f830
mov ecx, eax
call fcn.00470ae0
or ebx, 0x20
push eax
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x2c], ebx
call fcn.00413620
mov dword [ebp - 4], 0x19
test bl, 0x20
je 0x41aa3b
and ebx, 0xffffffdf
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x2c], ebx
call fcn.00404210
mov byte [ebp - 4], 0x1a
test bl, 0x10
je 0x41aa7e
mov edx, dword [ebp - 0x14]
and ebx, 0xffffffef
mov dword [ebp - 0x2c], ebx
cmp edx, 0x10
jb 0x41aa7e
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41aa74
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abae
push edx
push ecx
call fcn.0041dbcb
add esp, 8
cmp dword [ebp - 0x34], 0
je 0x41aaa5
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x44]
push ecx
cmp eax, dword [esi + 8]
je 0x41aa9d
mov ecx, eax
call fcn.00409900
add dword [esi + 4], 0x18
jmp 0x41aaa5
push eax
mov ecx, esi
call fcn.00409670
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x17
call fcn.00404210
inc edi
cmp edi, dword [ebp + 8]
jl 0x41a980
mov edx, dword [ebp - 0x98]
cmp edx, 0x10
jb 0x41aaf5
mov ecx, dword [ebp - 0xac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41aaeb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abf4
push edx
push ecx
call fcn.0041dbcb
add esp, 8
mov edx, dword [ebp - 0x4c]
mov bl, 1
pop edi
cmp edx, 0x10
jb 0x41ab2c
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41ab22
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abf9
push edx
push ecx
call fcn.0041dbcb
add esp, 8
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
cmp edx, 0x10
jb 0x41ab72
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41ab68
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41abf9
push edx
push ecx
call fcn.0041dbcb
add esp, 8
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea ecx, [ebp - 0xdc]
call fcn.0046f5c0
lea ecx, [ebp - 0x90]
call fcn.0046f5c0
mov ecx, dword [ebp - 0xc]
mov al, bl
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
call fcn.00455d9f
int3