Function at 0x424070
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
xor eax, eax
mov ebp, esp
push edi
mov edx, 3
push esi
push ebx
sub esp, 0x71c
mov edi, dword [ebp + 8]
mov dword [ebp - 0x6b8], eax
xor eax, eax
mov dword [ebp - 0x6ac], eax
xor eax, eax
mov dword [ebp - 0x69c], eax
mov eax, dword [ebp + 0x10]
mov byte [eax], 0
mov eax, dword [edi + 0x1b0]
test eax, eax
jne 0x424100
test edx, edx
mov ebx, edx
jne 0x4240e0
mov edx, dword [ebp - 0x69c]
test edx, edx
jne 0x4240c4
mov ecx, dword [ebp + 0x10]
cmp byte [ecx], 0
jne 0x4240ed
mov eax, dword [ebp + 0x14]
mov dword [esp], eax
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx]
call fcn.004238f0
test eax, eax
mov ebx, eax
je 0x4240ed
lea esi, [esi]
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
test eax, eax
jne 0x4246c0
add esp, 0x71c
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 0x388
mov eax, 1
mov dword [esp + 4], eax
call dword [0x4f50a0]
test eax, eax
mov esi, eax
je 0x4246fe
mov dword [eax], edi
mov ecx, dword [ebp + 0xc]
mov ebx, 0xffffffff
mov dword [esi + 0x9c], ebx
xor edx, edx
mov dword [esi + 4], 0xffffffff
mov dword [ecx], eax
mov eax, 0xffffffff
mov dword [esi + 0x98], eax
mov eax, dword [edi + 0x1b8]
test eax, eax
jne 0x4246e0
mov byte [esi + 0xfb], dl
mov eax, 0xffffffff
mov edx, 0xffffffff
mov byte [esi + 0xf8], 1
mov dword [esi + 0xa0], edx
mov dword [esi + 0xa4], eax
call fcn.0043a030
mov dword [esi + 0x90], eax
mov eax, dword [edi + 0x48]
mov dword [esi + 0x94], edx
test eax, eax
setne byte [esi + 0x100]
mov eax, dword [edi + 0x48]
mov edx, dword [edi + 0xbc]
mov dword [esi + 0x68], eax
mov eax, dword [edi + 0xb8]
mov dword [esi + 0x74], edx
mov dword [esi + 0x70], eax
mov eax, dword [edi + 0x3c]
test eax, eax
setne byte [esi + 0xfc]
mov eax, dword [edi + 0x1c]
test eax, eax
setne byte [esi + 0xfd]
movzx eax, byte [edi + 0x18f]
mov byte [esi + 0x109], al
movzx eax, byte [edi + 0x182]
mov byte [esi + 0x10a], al
movzx eax, byte [edi + 0x1a1]
mov byte [esi + 0x10d], al
movzx eax, byte [edi + 0x1a2]
mov byte [esi + 0x10e], al
movzx eax, byte [edi + 0x1a3]
mov byte [esi + 0x10f], al
mov eax, dword [edi + 0x1b0]
mov dword [esp], eax
call fcn.004f3780
cmp eax, 0xff
mov ebx, eax
ja 0x424221
mov ebx, 0x100
mov dword [esp], ebx
call dword [0x4f50b0]
mov edx, 0x1b
test eax, eax
mov dword [esi + 0x48], eax
je 0x4240ac
mov dword [esi + 0x4c], eax
mov dword [esp], ebx
call dword [0x4f50b0]
mov edx, 0x1b
test eax, eax
mov dword [esi + 0x28], eax
je 0x4240ac
mov dword [esi + 0x30], eax
mov byte [eax], 0
mov eax, dword [esi + 0x4c]
mov dword [esp + 0xc], eax
lea eax, [esi + 0x18]
mov dword [ebp - 0x6e8], eax
mov dword [esp + 8], eax
mov eax, 0x508b99
mov dword [esp + 4], eax
mov eax, dword [edi + 0x1b0]
mov dword [esp], eax
call fcn.004f3740
cmp eax, 2
je 0x42482d
mov eax, dword [esi + 0x4c]
mov word [eax], 0x2f
mov eax, dword [esi + 0x4c]
mov dword [esp + 0x10], eax
mov eax, dword [esi + 0x30]
mov dword [esp + 0xc], eax
mov ecx, dword [ebp - 0x6e8]
mov dword [esp + 8], ecx
mov ecx, 0x508ba7
mov dword [esp + 4], ecx
mov eax, dword [edi + 0x1b0]
mov dword [esp], eax
call fcn.004f3740
dec eax
jle 0x424d72
mov ecx, 0x40
mov dword [esp + 4], ecx
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.004f3970
test eax, eax
je 0x424b51
inc eax
mov edx, 0x3f
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004f3970
mov dword [ebp - 0x6b4], eax
mov ebx, dword [ebp - 0x6b4]
test ebx, ebx
je 0x42436a
mov eax, dword [ebp - 0x6b4]
mov dword [esp], eax
call fcn.004f3780
mov ebx, eax
mov eax, dword [esi + 0x4c]
mov dword [esp], eax
call fcn.004f3780
inc eax
mov dword [esp + 8], eax
mov eax, dword [esi + 0x4c]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x4c]
add eax, ebx
inc eax
mov dword [esp], eax
call fcn.004f3790
mov eax, dword [esi + 0x4c]
mov byte [eax], 0x2f
mov eax, dword [esi + 0x4c]
mov dword [esp + 8], ebx
mov edx, dword [ebp - 0x6b4]
inc eax
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004f3910
mov ecx, dword [ebp - 0x6b4]
mov byte [ecx], 0
mov eax, dword [esi + 0x4c]
cmp byte [eax], 0x3f
je 0x424c5c
cmp byte [esi + 0xfd], 0
jne 0x424775
mov eax, dword [edi + 0x1b8]
test eax, eax
je 0x4248e9
test byte [esi + 8], 1
jne 0x4248a6
mov edx, dword [esi + 0x74]
mov eax, dword [esi + 0x70]
mov ecx, edx
or ecx, eax
je 0x4243b4
cmp byte [esi + 0x100], 0
je 0x424c87
mov eax, 0x508bbe
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x6e8]
mov dword [esp], eax
call fcn.00429f30
test eax, eax
je 0x424b6a
or dword [esi + 8], 4
mov dword [esi + 0x50], 0x50
mov word [esi + 0x54], 0x50
mov eax, 0x4376e0
mov dword [esi + 0x114], eax
xor eax, eax
mov dword [esi + 0x11c], eax
mov eax, 0x437540
mov dword [esi + 0x118], eax
mov eax, 0x437490
mov dword [esi + 0x120], eax
mov eax, dword [edi + 0x1b8]
test eax, eax
je 0x424420
cmp byte [eax], 0
jne 0x424cda
test byte [esi + 9], 4
je 0x424436
cmp byte [esi + 0xfb], 0
je 0x424436
mov byte [esi + 0x10a], 1
mov byte [ebp - 0x118], 0
mov byte [ebp - 0x218], 0
test byte [esi + 8], 0x14
je 0x4244c1
mov eax, 0x40
mov dword [esp + 4], eax
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.004f3970
test eax, eax
mov edx, dword [esi + 0x30]
je 0x4244c1
inc eax
cmp dword [edi + 0x194], 2
mov dword [esi + 0x30], eax
je 0x4244c1
mov byte [esi + 0xfc], 1
cmp byte [edx], 0x3a
je 0x424e2f
mov dword [esp], edx
lea eax, [ebp - 0x118]
lea ecx, [ebp - 0x218]
mov dword [esp + 8], eax
mov eax, 0x508bc3
mov dword [esp + 0xc], ecx
mov dword [esp + 4], eax
call fcn.004f3740
cmp byte [ebp - 0x118], 0
jne 0x424ddd
cmp byte [ebp - 0x218], 0
jne 0x424e4f
lea eax, [ebp - 0x6a1]
mov ebx, 0x508bd6
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.004f3740
dec eax
je 0x424ba2
mov eax, 0x3a
mov dword [esp + 4], eax
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.004f3940
mov dword [ebp - 0x6b4], eax
mov eax, dword [edi + 0x38]
test eax, eax
je 0x424711
cmp byte [edi + 0x830c], 0
je 0x424711
mov word [esi + 0x54], ax
mov eax, dword [ebp - 0x6b4]
test eax, eax
je 0x42452f
mov ecx, dword [ebp - 0x6b4]
mov byte [ecx], 0
cmp byte [esi + 0xfb], 0
jne 0x424f6e
mov edx, dword [edi + 0x3c]
test edx, edx
jne 0x424c32
mov byte [esi + 0x110], 0
mov ebx, dword [edi + 0x194]
test ebx, ebx
jne 0x424bee
test byte [esi + 8], 0x10
je 0x42456f
cmp byte [esi + 0xfc], 0
je 0x424cbe
lea eax, [ebp - 0x118]
mov dword [esp], eax
call dword [0x4f50a4]
mov dword [esi + 0x78], eax
lea eax, [ebp - 0x218]
mov dword [esp], eax
call dword [0x4f50a4]
mov edx, dword [esi + 0x78]
test edx, edx
mov dword [esi + 0x7c], eax
je 0x424707
test eax, eax
je 0x424707
lea ecx, [esi + 0xc8]
lea eax, [edi + 0x128]
mov dword [ebp - 0x6e4], ecx
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.00429930
test al, al
mov edx, 0x1b
je 0x4240ac
cmp byte [edi + 0x19f], 0
je 0x424ff5
cmp byte [edi + 0x82f0], 0
jne 0x424ff5
xor ebx, ebx
mov dword [ebp - 0x6e0], ebx
mov ebx, dword [edi + 0x2d8]
cmp ebx, 0
jle 0x42461c
mov eax, dword [edi + 0x2d4]
mov edx, dword [ebp - 0x6e0]
mov ecx, dword [eax + edx*4]
test ecx, ecx
je 0x42461c
inc edx
cmp ebx, edx
mov dword [ebp - 0x6e0], edx
jg 0x424604
cmp ebx, dword [ebp - 0x6e0]
je 0x42584b
cmp dword [ebp - 0x6e0], 0xffffffff
je 0x424643
mov ecx, dword [ebp - 0x6e0]
mov eax, dword [edi + 0x2d4]
mov dword [esi + 4], ecx
mov dword [eax + ecx*4], esi
mov eax, dword [edi + 0x80]
xor ecx, ecx
test byte [esi + 8], 4
mov dword [esi + 0x248], eax
mov eax, dword [edi + 0x28]
mov dword [esi + 0x24c], eax
je 0x424685
cmp byte [edi + 0x191], 0
je 0x424685
mov eax, dword [edi + 0xa8]
mov edx, dword [edi + 0xac]
and eax, edx
inc eax
jne 0x424685
cmp dword [edi + 0x11c], 1
je 0x424685
mov cl, 1
cmp byte [esi + 0xf9], 0
mov byte [esi + 0x103], cl
je 0x425699
xor ecx, ecx
xor eax, eax
cmp byte [esi + 0xfb], 0
mov dword [ebp - 0x6b0], ecx
jne 0x425652
mov dword [ebp - 0x69c], eax
mov edx, dword [ebp - 0x6b8]
jmp 0x4240ac
mov dword [esp], eax
call fcn.004221c0
mov ecx, dword [ebp + 0xc]
mov eax, ebx
mov dword [ecx], 0
add esp, 0x71c
pop ebx
pop esi
pop edi
pop ebp
ret
cmp byte [eax], 0
je 0x424154
mov ecx, dword [edi + 0x158]
test ecx, ecx
jne 0x424154
mov dl, 1
jmp 0x424154
mov edx, dword [ebp + 0xc]
mov dword [edx], 0
mov edx, 0x1b
jmp 0x4240ac
mov eax, dword [ebp - 0x6b4]
test eax, eax
je 0x42453c
mov eax, 0xa
mov dword [esp + 8], eax
lea eax, [ebp - 0x6a8]
mov dword [esp + 4], eax
mov ebx, dword [ebp - 0x6b4]
inc ebx
mov dword [esp], ebx
call fcn.004f3980
mov edx, dword [ebp - 0x6a8]
cmp ebx, edx
je 0x42453c
cmp byte [edx], 0
jne 0x42453c
cmp eax, 0xffff
ja 0x424fd6
mov edx, dword [ebp - 0x6b4]
mov byte [edx], 0
mov word [esi + 0x54], ax
jmp 0x42453c
movzx ebx, byte [0x508beb]
xor edx, edx
mov ecx, 0xff
lea eax, [ebp - 0x317]
mov byte [ebp - 0x318], bl
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004f3870
mov byte [ebp - 0x418], bl
xor edx, edx
mov ecx, 0xff
mov dword [esp + 4], edx
lea eax, [ebp - 0x417]
lea ebx, [ebp - 0x318]
mov dword [esp + 8], ecx
mov dword [esp], eax
call fcn.004f3870
mov dword [esp + 8], ebx
lea eax, [ebp - 0x418]
mov dword [esp + 0xc], eax
mov eax, 0x508ceb
mov dword [esp + 4], eax
mov eax, dword [edi + 0x1c]
mov dword [esp], eax
call fcn.004f3740
mov dword [esp], ebx
call dword [0x4f50a4]
mov edx, 0x1b
test eax, eax
mov dword [esi + 0x80], eax
je 0x4240ac
lea edx, [ebp - 0x418]
mov dword [esp], edx
call dword [0x4f50a4]
mov edx, 0x1b
test eax, eax
mov dword [esi + 0x84], eax
je 0x4240ac
jmp 0x424383
mov eax, 0x508cfd
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x6e8]
mov dword [esp], edx
call fcn.00429f30
test eax, eax
je 0x424290
mov eax, dword [esi + 0x4c]
cmp byte [eax], 0x2f
je 0x424fbe
mov dword [esp], eax
mov ebx, 0x2f
mov dword [esp + 4], ebx
call fcn.004f3970
test eax, eax
mov ebx, eax
je 0x424896
xor eax, eax
cmp byte [ebx + 1], 0x2f
sete al
add ebx, eax
mov dword [esp], ebx
call fcn.004f3780
mov dword [esp + 4], ebx
inc eax
mov dword [esp + 8], eax
mov eax, dword [esi + 0x4c]
mov dword [esp], eax
call fcn.004f3790
mov dword [esi + 0x18], 0x656c6966
mov byte [esi + 0x1c], 0
jmp 0x4242ce
mov eax, dword [edi + 0x1b0]
mov dword [esp + 8], eax
mov ecx, dword [ebp - 0x6e8]
mov dword [esp], 0x508d02
mov dword [esp + 4], ecx
call fcn.0042b550
test eax, eax
mov edx, 0x1b
je 0x4240ac
mov byte [edi + 0x1b4], 1
and dword [esi + 8], 0xfffffffe
mov dword [edi + 0x1b0], eax
jmp 0x42439b
mov dword [esp], 0x508d0a
call fcn.0042c7a0
mov dword [ebp - 0x6bc], eax
test eax, eax
je 0x4249de
mov ecx, dword [ebp - 0x6bc]
mov dword [esp], 0x508d13
mov dword [esp + 4], ecx
call fcn.00429f30
test eax, eax
jne 0x424b2f
mov eax, dword [ebp - 0x6bc]
test eax, eax
je 0x4249f8
lea eax, [ebp - 0x6a0]
mov dword [esp + 8], eax
mov eax, 0x508d15
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x6bc]
mov dword [esp], eax
jmp 0x4249a5
mov ecx, dword [esi + 0x30]
mov ebx, eax
sub ebx, ecx
mov edx, dword [ebp - 0x6c4]
mov dword [esp], edx
call fcn.004f3780
cmp eax, ebx
ja 0x42498b
mov edx, dword [esi + 0x30]
mov dword [esp + 8], eax
add ebx, edx
sub ebx, eax
mov dword [esp + 4], ebx
mov ecx, dword [ebp - 0x6c4]
mov dword [esp], ecx
call fcn.00429f60
test eax, eax
jne 0x4255b4
mov dword [esp], 0
lea eax, [ebp - 0x6a0]
mov dword [esp + 8], eax
mov eax, 0x508d15
mov dword [esp + 4], eax
call fcn.0042bef0
mov dword [ebp - 0x6c4], eax
test eax, eax
je 0x4249f8
mov ebx, 0x3a
mov dword [esp + 4], ebx
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.004f3970
test eax, eax
jne 0x42494d
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.004f3780
mov ebx, eax
jmp 0x424954
mov dword [esp], 0x508d18
call fcn.0042c7a0
mov dword [ebp - 0x6bc], eax
test eax, eax
jne 0x424903
mov eax, dword [ebp - 0x6e8]
lea edx, [ebp - 0x498]
mov dword [ebp - 0x6cc], edx
mov dword [ebp - 0x6c8], eax
movzx eax, byte [esi + 0x18]
jmp 0x424a3e
movsx eax, al
mov ebx, dword [ebp - 0x6cc]
inc dword [ebp - 0x6cc]
mov dword [esp], eax
inc dword [ebp - 0x6c8]
call fcn.004f39a0
mov byte [ebx], al
mov ecx, dword [ebp - 0x6c8]
movzx eax, byte [ecx]
test al, al
jne 0x424a16
mov eax, dword [ebp - 0x6cc]
lea edx, [ebp - 0x498]
mov dword [eax], 0x6f72705f
mov word [eax + 4], 0x7978
mov byte [eax + 6], 0
mov dword [esp], edx
call fcn.0042c7a0
test eax, eax
je 0x425545
mov dword [ebp - 0x6c0], eax
cmp byte [eax], 0
jne 0x424ea5
mov dword [esp], 0x508d21
call fcn.0042c7a0
mov dword [ebp - 0x6c0], eax
test eax, eax
je 0x424e93
mov eax, dword [ebp - 0x6c0]
cmp byte [eax], 0
je 0x424b2f
mov dword [esp], eax
mov edx, 0x508d2b
mov dword [esp + 4], edx
call fcn.004f37a0
test eax, eax
mov ebx, eax
je 0x4255c7
add ebx, 3
mov dword [ebp - 0x6d0], ebx
mov eax, 0x40
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004f3970
test eax, eax
mov ebx, eax
je 0x424b15
lea ecx, [ebp - 0x698]
lea eax, [ebp - 0x598]
mov dword [esp + 0xc], ecx
mov ecx, 0x508d2f
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov edx, dword [ebp - 0x6d0]
mov dword [esp], edx
call fcn.004f3740
cmp eax, 2
je 0x425792
mov eax, dword [ebp - 0x6c0]
mov byte [edi + 0x1bc], 1
mov dword [edi + 0x1b8], eax
mov byte [esi + 0xfb], 1
mov edx, dword [ebp - 0x6bc]
test edx, edx
je 0x424391
mov edx, dword [ebp - 0x6bc]
mov dword [esp], edx
call dword [0x4f50ac]
jmp 0x424391
mov eax, 0x3f
mov dword [esp + 4], eax
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.004f3970
jmp 0x4242fc
mov eax, 0x508d41
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x6e8]
mov dword [esp], edx
call fcn.00429f30
test eax, eax
je 0x424eb8
or dword [esi + 8], 0x40c
mov dword [esi + 0x50], 0x1bb
mov word [esi + 0x54], 0x1bb
jmp 0x4243e4
cmp byte [ebp - 0x6a1], 0x5d
jne 0x4244e6
mov byte [esi + 0xfe], 1
mov eax, dword [esi + 0x30]
mov ecx, 0x5d
inc eax
mov dword [esi + 0x30], eax
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.004f3970
mov byte [eax], 0
inc eax
mov dword [ebp - 0x6b4], eax
cmp byte [eax], 0x3a
je 0x424500
xor edx, edx
mov dword [ebp - 0x6b4], edx
jmp 0x424500
mov eax, dword [edi + 0x198]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x218]
mov dword [esp + 8], eax
lea eax, [ebp - 0x118]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.0042db00
test eax, eax
jne 0x424f51
mov byte [esi + 0x110], 1
mov byte [esi + 0xfc], 1
jmp 0x42455c
mov dword [esp], edx
lea eax, [ebp - 0x218]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x118]
mov dword [esp + 8], eax
mov eax, 0x508ceb
mov dword [esp + 4], eax
call fcn.004f3740
jmp 0x424547
mov dword [esp], eax
call fcn.004f3780
inc eax
mov dword [esp + 8], eax
mov eax, dword [esi + 0x4c]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x4c]
inc eax
mov dword [esp], eax
call fcn.004f3790
mov eax, dword [esi + 0x4c]
mov byte [eax], 0x2f
jmp 0x424376
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], 0x508d47
call fcn.0042b550
mov dword [esi + 0x68], eax
test eax, eax
mov edx, 0x1b
je 0x4240ac
mov byte [esi + 0x101], 1
mov byte [esi + 0x100], 1
jmp 0x4243b4
mov dword [esp], 0x508d4d
call dword [0x4f50a4]
mov dword [esi + 0x78], eax
mov dword [esp], 0x508d57
jmp 0x42458a
mov dword [esp], eax
call dword [0x4f50a4]
mov dword [ebp - 0x6d4], eax
test eax, eax
mov ebx, eax
je 0x425667
mov dword [esp], eax
mov ecx, 0x508d2b
mov dword [esp + 4], ecx
call fcn.004f37a0
test eax, eax
je 0x424d11
add eax, 3
mov dword [ebp - 0x6d4], eax
mov edx, 0x3a
mov dword [esp + 4], edx
mov ecx, dword [ebp - 0x6d4]
mov dword [esp], ecx
call fcn.004f3970
test eax, eax
je 0x42531f
mov byte [eax], 0
inc eax
mov dword [esp], eax
call fcn.004f3860
mov dword [esi + 0x50], eax
mov eax, dword [ebp - 0x6d4]
mov dword [esp], eax
call dword [0x4f50a4]
mov dword [esi + 0x38], eax
mov dword [esi + 0x40], eax
mov dword [esp], ebx
call dword [0x4f50ac]
mov eax, dword [esi + 0x38]
mov edx, 0x1b
test eax, eax
je 0x4240ac
jmp 0x424420
mov eax, dword [esi + 0x4c]
mov edx, 0x508d6e
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0x30]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov eax, dword [edi + 0x1b0]
mov dword [esp], eax
call fcn.004f3740
test eax, eax
jle 0x42548f
mov eax, 7
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esp], 0x508d7a
mov dword [esp + 4], eax
call fcn.00429f60
test eax, eax
je 0x42532f
mov dword [esi + 0x18], 0x68706f67
mov word [esi + 0x1c], 0x7265
mov byte [esi + 0x1e], 0
or dword [esi + 8], 1
jmp 0x4242ce
xor eax, eax
lea edx, [ebp - 0x118]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.0042c920
test eax, eax
mov ebx, eax
mov edx, 0x1b
je 0x4240ac
mov dword [esp], eax
call fcn.004f3780
cmp eax, 0xff
ja 0x424e21
mov dword [esp + 4], ebx
lea ecx, [ebp - 0x118]
mov dword [esp], ecx
call fcn.004f36f0
mov dword [esp], ebx
call dword [0x4f50ac]
jmp 0x4244b4
mov dword [esp], edx
lea eax, [ebp - 0x218]
mov dword [esp + 8], eax
mov eax, 0x508d82
mov dword [esp + 4], eax
call fcn.004f3740
jmp 0x4244a7
xor eax, eax
mov dword [esp + 4], eax
lea eax, [ebp - 0x218]
mov dword [esp], eax
call fcn.0042c920
test eax, eax
mov ebx, eax
mov edx, 0x1b
je 0x4240ac
mov dword [esp], eax
call fcn.004f3780
cmp eax, 0xff
jbe 0x4254aa
mov dword [esp], ebx
call dword [0x4f50ac]
jmp 0x4244c1
mov dword [esp], 0x508d8c
call fcn.0042c7a0
mov dword [ebp - 0x6c0], eax
mov ecx, dword [ebp - 0x6c0]
test ecx, ecx
jne 0x424a97
jmp 0x424b2f
mov ebx, 0x508d96
mov dword [esp + 4], ebx
mov ecx, dword [ebp - 0x6e8]
mov dword [esp], ecx
call fcn.00429f30
test eax, eax
je 0x425367
mov dword [esi + 0x50], 0x46
mov eax, dword [esi + 0x4c]
mov word [esi + 0x54], 0x46
movsx edx, byte [eax + 1]
mov eax, dword [0x5406bc]
cmp dword [eax], 1
jne 0x425479
mov eax, dword [0x540704]
mov eax, dword [eax]
movzx eax, word [eax + edx*2]
and eax, 4
test eax, eax
je 0x424f2a
mov eax, dword [esi + 0x4c]
mov edx, 0x2f
mov dword [esp + 4], edx
inc eax
mov dword [esp], eax
call fcn.004f3970
test eax, eax
jne 0x424f27
mov eax, dword [esi + 0x48]
mov dword [esi + 0x4c], eax
or dword [esi + 8], 2
mov eax, 0x4376e0
mov dword [esi + 0x114], eax
xor eax, eax
mov dword [esi + 0x11c], eax
mov eax, 0x437540
mov dword [esi + 0x118], eax
jmp 0x42440d
mov eax, dword [esi + 0x30]
mov ecx, 0x508da0
mov dword [esp + 4], ecx
mov dword [esp], edi
mov dword [esp + 8], eax
call fcn.0042c6f0
jmp 0x42455c
mov eax, dword [esi + 0x4c]
mov dword [esp + 0xc], eax
movzx eax, word [esi + 0x54]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esp], 0x508dda
mov dword [esp + 4], eax
call fcn.0042b550
test eax, eax
mov ebx, eax
mov edx, 0x1b
je 0x4240ac
cmp byte [edi + 0x1b4], 0
jne 0x425531
mov dword [edi + 0x1b0], ebx
mov byte [edi + 0x1b4], 1
jmp 0x42453c
cmp byte [eax + 1], 0x2f
je 0x425720
cmp byte [eax], 0x2f
je 0x424896
jmp 0x424858
mov dword [esp + 8], eax
mov eax, 0x508de9
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.0042c310
mov edx, 3
jmp 0x4240ac
xor ebx, ebx
mov dword [ebp - 0x6d8], ebx
mov ebx, dword [edi + 0x2d8]
cmp ebx, 0
jmp 0x425014
inc dword [ebp - 0x6d8]
cmp ebx, dword [ebp - 0x6d8]
jle 0x4250e9
mov eax, dword [edi + 0x2d4]
mov edx, dword [ebp - 0x6d8]
mov eax, dword [eax + edx*4]
mov dword [ebp - 0x6dc], eax
test eax, eax
je 0x425008
mov ecx, dword [esi + 8]
mov edx, dword [ebp - 0x6dc]
mov eax, ecx
and eax, 0x400
mov dword [ebp - 0x6fc], eax
mov eax, dword [edx + 8]
and eax, 0x400
cmp dword [ebp - 0x6fc], eax
jne 0x425008
cmp byte [esi + 0xfb], 0
je 0x42506b
test ch, 4
je 0x4255d2
test ch, 4
jne 0x42507f
mov edx, dword [ebp - 0x6dc]
cmp byte [edx + 0xfb], 0
jne 0x425008
mov eax, dword [ebp - 0x6dc]
add eax, 0x18
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0x6e8]
mov dword [esp], ecx
call fcn.00429f30
test eax, eax
jne 0x425872
mov ebx, dword [edi + 0x2d8]
jmp 0x425008
mov eax, dword [ebp - 0x6d8]
mov dword [esp], edi
mov dword [esp + 8], eax
mov eax, 0x508e04
mov dword [esp + 4], eax
call fcn.0042c6f0
mov edx, dword [ebp - 0x6dc]
mov dword [esp], edx
call fcn.004221c0
mov eax, dword [edi + 0x2d4]
mov ecx, dword [ebp - 0x6d8]
mov dword [eax + ecx*4], 0
xor eax, eax
test al, al
je 0x4245eb
mov eax, dword [esi + 0x38]
mov ebx, esi
test eax, eax
je 0x425105
mov dword [esp], eax
call dword [0x4f50ac]
mov eax, dword [ebp - 0x6e4]
mov dword [esp], eax
call fcn.00429a20
movzx eax, byte [ebx + 0xfc]
mov esi, dword [ebp - 0x6ac]
test al, al
mov byte [esi + 0xfc], al
je 0x42515a
mov eax, dword [esi + 0x78]
mov dword [esp], eax
call fcn.00421f90
mov eax, dword [esi + 0x7c]
mov dword [esp], eax
call fcn.00421f90
mov eax, dword [ebx + 0x78]
mov dword [esi + 0x78], eax
mov eax, dword [ebx + 0x7c]
mov dword [ebx + 0x78], 0
mov dword [esi + 0x7c], eax
mov dword [ebx + 0x7c], 0
movzx eax, byte [ebx + 0xfd]
test al, al
mov byte [esi + 0xfd], al
je 0x4251af
mov eax, dword [esi + 0x80]
mov dword [esp], eax
call fcn.00421f90
mov eax, dword [esi + 0x84]
mov dword [esp], eax
call fcn.00421f90
mov eax, dword [ebx + 0x80]
mov dword [esi + 0x80], eax
mov eax, dword [ebx + 0x84]
mov dword [esi + 0x84], eax
xor eax, eax
mov dword [ebx + 0x80], eax
xor eax, eax
mov dword [ebx + 0x84], eax
movzx edx, byte [esi + 0xfb]
test dl, dl
je 0x4251e5
mov eax, dword [esi + 0x28]
mov dword [esp], eax
call dword [0x4f50ac]
movzx edx, byte [esi + 0xfb]
mov eax, dword [ebx + 0x28]
mov dword [esi + 0x28], eax
mov eax, dword [ebx + 0x2c]
mov dword [esi + 0x2c], eax
mov eax, dword [ebx + 0x30]
mov dword [esi + 0x30], eax
mov eax, dword [ebx + 0x34]
mov dword [esi + 0x34], eax
movzx eax, byte [ebx + 0x109]
test dl, dl
mov byte [esi + 0x109], al
jne 0x425202
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call dword [0x4f50ac]
mov eax, dword [esi + 0x48]
mov dword [esp], eax
call dword [0x4f50ac]
mov byte [esi + 0xf9], 1
mov eax, dword [ebx + 0x48]
mov byte [esi + 0xfa], 0
mov dword [esi + 0x48], eax
mov eax, dword [ebx + 0x4c]
mov dword [esi + 0x4c], eax
mov eax, 0xffffffff
mov dword [esi + 0xa0], eax
mov eax, 0xffffffff
mov dword [esi + 0xa4], eax
mov eax, dword [ebx + 0x78]
mov dword [esp], eax
call fcn.00421f90
mov eax, dword [ebx + 0x7c]
mov dword [esp], eax
call fcn.00421f90
mov eax, dword [ebx + 0x80]
mov dword [esp], eax
call fcn.00421f90
mov eax, dword [ebx + 0x84]
mov dword [esp], eax
call fcn.00421f90
cmp byte [ebx + 0x101], 0
je 0x425285
mov eax, dword [ebx + 0x68]
mov dword [esp], eax
call dword [0x4f50ac]
mov dword [esp], ebx
call dword [0x4f50ac]
mov edx, dword [edi + 0xbc]
mov eax, dword [edi + 0xb8]
mov ecx, edx
mov dword [esi + 0x70], eax
or ecx, eax
mov dword [esi + 0x74], edx
je 0x425682
cmp byte [esi + 0x101], 1
je 0x425942
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], 0x508d47
call fcn.0042b550
mov dword [esi + 0x68], eax
test eax, eax
mov edx, 0x1b
je 0x4240ac
mov byte [esi + 0x100], 1
mov byte [esi + 0x101], 1
mov eax, dword [ebp + 0xc]
mov dword [eax], esi
cmp byte [esi + 0xfb], 0
je 0x42580a
mov eax, dword [esi + 0x44]
mov dword [esp + 0xc], eax
mov eax, dword [esi + 4]
mov dword [esp], edi
mov dword [esp + 8], eax
mov eax, 0x508e28
mov dword [esp + 4], eax
call fcn.0042c6f0
jmp 0x424643
mov eax, dword [edi + 0x20]
test eax, eax
je 0x424d3f
jmp 0x424d3c
mov eax, 4
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esp], 0x508e5b
mov dword [esp + 4], eax
call fcn.00429f60
test eax, eax
je 0x4257d6
mov dword [esi + 0x18], 0x73707466
mov byte [esi + 0x1c], 0
or dword [esi + 8], 1
jmp 0x4242ce
mov eax, 0x508e60
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x6e8]
mov dword [esp], eax
call fcn.00429f30
test eax, eax
jne 0x4253a1
mov eax, 0x508e5b
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x6e8]
mov dword [esp], edx
call fcn.00429f30
test eax, eax
je 0x42574d
mov eax, 0x508e5b
mov ebx, 0x15
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0x6e8]
mov dword [esp], ecx
call fcn.00429f30
test eax, eax
je 0x425529
mov byte [esi + 0xb8], 1
mov eax, dword [esi + 8]
mov ebx, 0x3de
or eax, 0x600
mov dword [esi + 0x50], ebx
mov edx, dword [edi + 0x1b8]
or eax, 0x10
mov word [esi + 0x54], bx
mov dword [esi + 8], eax
test edx, edx
je 0x4254c1
cmp byte [edx], 0
je 0x4254c1
cmp byte [edi + 0x182], 0
jne 0x4254c1
test ah, 2
jne 0x425acf
mov ebx, 0x4376e0
mov ecx, 0x437540
mov dword [esi + 0x114], ebx
mov dword [esi + 0x118], ecx
mov eax, dword [esi + 0x4c]
mov edx, 0x508e64
inc eax
mov dword [esi + 0x4c], eax
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004f37a0
test eax, eax
je 0x425812
mov byte [eax], 0
movsx eax, byte [eax + 6]
mov dword [esp], eax
call fcn.004f3990
movsx eax, al
cmp eax, 0x41
je 0x42583f
cmp eax, 0x44
je 0x425833
mov byte [edi + 0x184], 0
jmp 0x42440d
mov dword [esp], edx
mov ecx, 4
mov dword [esp + 4], ecx
call fcn.004f39b0
jmp 0x424f07
mov dword [esp], edi
mov eax, 0x508e6b
mov dword [esp + 4], eax
call fcn.0042c310
mov edx, 3
jmp 0x4240ac
mov dword [esp + 4], ebx
lea edx, [ebp - 0x218]
mov dword [esp], edx
call fcn.004f36f0
jmp 0x424e85
mov eax, fcn.00434ce0
mov edx, 0x435300
mov ebx, 0x4315f0
mov dword [esi + 0x11c], eax
mov eax, fcn.00431970
mov ecx, 0x434f90
mov dword [esi + 0x118], eax
mov eax, 0x434bb0
mov dword [esi + 0x120], eax
mov eax, fcn.00434ad0
mov dword [esi + 0x124], eax
mov eax, 0x4352b0
mov dword [esi + 0x128], eax
mov eax, 0x4315f0
mov dword [esi + 0x114], edx
mov dword [esi + 0x12c], eax
mov dword [esi + 0x130], ebx
mov dword [esi + 0x134], ecx
jmp 0x425429
mov eax, dword [esi + 8]
jmp 0x4253d9
mov eax, dword [edi + 0x1b0]
mov dword [esp], eax
call dword [0x4f50ac]
jmp 0x424fac
mov dword [esp], 0x508e7b
lea ecx, [ebp - 0x498]
mov dword [esp + 4], ecx
call fcn.00429f30
test eax, eax
jne 0x424a7d
lea eax, [ebp - 0x498]
mov dword [ebp - 0x6cc], eax
movzx eax, byte [ebp - 0x498]
jmp 0x425595
movsx eax, al
mov dword [esp], eax
call fcn.004f3990
mov edx, dword [ebp - 0x6cc]
mov byte [edx], al
inc edx
mov dword [ebp - 0x6cc], edx
movzx eax, byte [edx]
test al, al
jne 0x425578
lea ecx, [ebp - 0x498]
mov dword [esp], ecx
call fcn.0042c7a0
test eax, eax
jne 0x424a6e
jmp 0x424a7d
mov ebx, dword [ebp - 0x6c4]
test ebx, ebx
jne 0x424b2f
jmp 0x4249f8
mov ebx, dword [ebp - 0x6c0]
jmp 0x424ac4
mov eax, dword [ebp - 0x6dc]
cmp byte [eax + 0xfb], 0
je 0x4250a2
mov eax, dword [eax + 0x40]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x40]
mov dword [esp], eax
call fcn.00429f30
test eax, eax
je 0x4250a2
mov ecx, dword [ebp - 0x6dc]
mov eax, dword [ecx + 0x50]
cmp dword [esi + 0x50], eax
jne 0x4250a2
mov edx, dword [ebp - 0x6dc]
xor ecx, ecx
mov eax, dword [edx + 0x98]
mov dword [esp + 8], ecx
mov edx, 0xffffffff
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0043a120
test eax, eax
jne 0x4250ad
mov ecx, dword [ebp - 0x6dc]
mov eax, 1
mov dword [ebp - 0x6ac], ecx
jmp 0x4250eb
lea edx, [esi + 0x28]
mov eax, esi
call fcn.004238e0
mov eax, dword [ebp - 0x6b0]
jmp 0x4246af
mov dword [esp], edi
mov ebx, 0x508e86
mov dword [esp + 4], ebx
call fcn.0042c310
mov edx, 0x1b
jmp 0x4240ac
mov eax, dword [edi + 0x48]
test eax, eax
jne 0x425b20
mov byte [esi + 0x100], 0
jmp 0x4252e9
mov eax, esi
lea edx, [esi + 0x28]
call fcn.004238e0
mov eax, dword [edi + 0x1b8]
test eax, eax
je 0x4256b6
cmp byte [eax], 0
jne 0x425959
movzx eax, word [esi + 0x54]
mov dword [esi + 0x50], eax
lea eax, [ebp - 0x6b0]
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0x50]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.004290c0
dec eax
je 0x425937
mov eax, dword [ebp - 0x6b0]
test eax, eax
jne 0x4246af
mov eax, dword [esi + 0x34]
mov edx, 0x508e96
mov dword [esp + 4], edx
mov dword [esp], edi
mov dword [esp + 8], eax
call fcn.0042c310
mov eax, 6
mov dword [ebp - 0x6b8], eax
jmp 0x42565c
add eax, 2
mov dword [esp], eax
call fcn.004f3780
inc eax
mov dword [esp + 8], eax
mov eax, dword [esi + 0x4c]
add eax, 2
mov dword [esp + 4], eax
mov eax, dword [esi + 0x4c]
mov dword [esp], eax
call fcn.004f3790
mov eax, dword [esi + 0x4c]
jmp 0x424fc8
mov ecx, 0x508eb1
mov dword [esp + 4], ecx
mov eax, dword [ebp - 0x6e8]
mov dword [esp], eax
call fcn.00429f30
test eax, eax
je 0x425a91
or dword [esi + 8], 0x20
mov edx, 0x42fda0
mov eax, 0x42fd60
mov dword [esi + 0x50], 0x17
mov word [esi + 0x54], 0x17
mov dword [esi + 0x114], edx
jmp 0x424f46
mov eax, dword [esi + 0x80]
mov dword [esp], eax
call fcn.00421f90
lea ecx, [ebp - 0x598]
mov dword [esp], ecx
call dword [0x4f50a4]
mov dword [esi + 0x80], eax
test eax, eax
jne 0x4259ba
mov ecx, dword [ebp - 0x6c0]
mov dword [esp], ecx
call dword [0x4f50ac]
mov edx, 0x1b
jmp 0x4240ac
mov eax, 4
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esp], 0x508eb8
mov dword [esp + 4], eax
call fcn.00429f60
test eax, eax
je 0x425a1c
or dword [esi + 8], 1
mov dword [esi + 0x18], 0x707466
jmp 0x4242ce
mov eax, dword [esi + 0x34]
jmp 0x4252fe
mov ebx, 0x508e64
mov dword [esp + 4], ebx
mov eax, dword [esi + 0x28]
mov dword [esp], eax
call fcn.004f37a0
test eax, eax
jne 0x425449
jmp 0x42440d
mov byte [edi + 0x185], 1
jmp 0x42440d
mov byte [edi + 0x184], 1
jmp 0x42440d
mov eax, edi
mov ebx, 0x508ec0
call fcn.00423400
mov dword [ebp - 0x6e0], eax
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], edi
call fcn.0042c6f0
jmp 0x424628
mov edx, dword [ebp - 0x6dc]
mov eax, dword [edx + 0x30]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x30]
mov dword [esp], eax
call fcn.00429f30
test eax, eax
je 0x4250a2
mov ecx, dword [ebp - 0x6dc]
movzx eax, word [ecx + 0x54]
cmp word [esi + 0x54], ax
jne 0x4250a2
mov eax, dword [esi + 8]
test ah, 4
jne 0x42590e
test al, 0x10
jne 0x4258c9
test al, 4
je 0x425611
mov eax, dword [esi]
cmp dword [eax + 0x8358], 8
jne 0x425611
mov edx, dword [ebp - 0x6dc]
mov eax, dword [edx + 0x78]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x78]
mov dword [esp], eax
call fcn.00429f30
test eax, eax
je 0x4250a2
mov ecx, dword [ebp - 0x6dc]
mov eax, dword [ecx + 0x7c]
mov dword [esp + 4], eax
mov eax, dword [esi + 0x7c]
mov dword [esp], eax
call fcn.00429f30
test eax, eax
je 0x4250a2
jmp 0x425611
mov eax, ecx
add eax, 0xc8
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x6e4]
mov dword [esp], eax
call fcn.004298a0
test al, al
je 0x4250a2
mov eax, dword [esi + 8]
jmp 0x4258ae
mov eax, dword [ebp + 0x10]
mov byte [eax], 1
jmp 0x42565c
mov eax, dword [esi + 0x68]
mov dword [esp], eax
call dword [0x4f50ac]
mov eax, dword [esi + 0x70]
mov edx, dword [esi + 0x74]
jmp 0x4252b7
lea edx, [esi + 0x38]
mov eax, esi
call fcn.004238e0
lea eax, [ebp - 0x6b0]
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0x50]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x40]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.004290c0
dec eax
je 0x425a52
mov eax, dword [ebp - 0x6b0]
test eax, eax
jne 0x4246af
mov eax, dword [esi + 0x44]
mov dword [esp], edi
mov dword [esp + 8], eax
mov eax, 0x508eea
mov dword [esp + 4], eax
call fcn.0042c310
mov eax, 5
jmp 0x42570f
mov eax, dword [esi + 0x84]
mov dword [esp], eax
call fcn.00421f90
lea eax, [ebp - 0x698]
mov dword [esp], eax
call dword [0x4f50a4]
mov dword [esi + 0x84], eax
test eax, eax
je 0x4257bd
mov byte [esi + 0xfd], 1
lea eax, [ebx + 1]
mov dword [esp], eax
call dword [0x4f50a4]
test eax, eax
mov ebx, eax
je 0x4257bd
mov edx, dword [ebp - 0x6c0]
mov dword [esp], edx
call dword [0x4f50ac]
mov dword [ebp - 0x6c0], ebx
jmp 0x424b15
mov eax, 7
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esp], 0x508f06
mov dword [esp + 4], eax
call fcn.00429f60
test eax, eax
je 0x425a5d
mov dword [esi + 0x18], 0x6e6c6574
mov word [esi + 0x1c], 0x7465
mov byte [esi + 0x1e], 0
jmp 0x424dd4
mov edx, dword [ebp + 0x10]
mov byte [edx], 1
jmp 0x42565c
mov eax, 5
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esp], 0x508f0e
mov dword [esp + 4], eax
call fcn.00429f60
test eax, eax
je 0x425b4c
mov dword [esi + 0x18], 0x54434944
mov byte [esi + 0x1c], 0
jmp 0x42535e
mov eax, 0x508f14
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x6e8]
mov dword [esp], edx
call fcn.00429f30
test eax, eax
je 0x425aea
or dword [esi + 8], 0x40
mov eax, 0x42f1a0
mov dword [esi + 0x50], 0xa44
mov word [esi + 0x54], 0xa44
mov dword [esi + 0x114], eax
xor eax, eax
jmp 0x424f46
mov dword [esp], edi
mov esi, 0x508f1c
mov dword [esp + 4], esi
call fcn.0042c310
mov edx, 1
jmp 0x4240ac
mov eax, 0x508f43
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0x6e8]
mov dword [esp], ecx
call fcn.00429f30
test eax, eax
je 0x425b80
or dword [esi + 8], 0x80
mov eax, 0x42e730
mov dword [esi + 0x50], 0x185
mov word [esi + 0x54], 0x185
jmp 0x425ac2
mov dword [esp], eax
call dword [0x4f50a4]
mov edx, 0x1b
test eax, eax
mov dword [esi + 0x68], eax
je 0x4240ac
mov byte [esi + 0x101], 1
mov byte [esi + 0x100], 1
jmp 0x4252e9
mov ebx, 5
mov dword [esp + 8], ebx
mov eax, dword [esi + 0x30]
mov dword [esp], 0x508f48
mov dword [esp + 4], eax
call fcn.00429f60
test eax, eax
je 0x425c22
mov dword [esi + 0x18], 0x5041444c
mov byte [esi + 0x1c], 0
jmp 0x42535e
mov ebx, 0x508f4e
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x6e8]
mov dword [esp], eax
call fcn.00429f30
test eax, eax
je 0x425c32
or dword [esi + 8], 0x100
mov ecx, 0x42dfd0
mov edx, fcn.0042de50
mov dword [esi + 0x114], ecx
mov dword [esi + 0x118], edx
mov dword [esp], esi
call fcn.0042de90
mov dword [ebp - 0x6b8], eax
test eax, eax
jne 0x4246b5
mov byte [esi + 0x106], 1
xor eax, eax
mov edi, 0xffffffff
mov dword [esp + 0x1c], eax
mov eax, 0xffffffff
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 0x14], eax
xor eax, eax
mov dword [esp + 0x10], eax
mov eax, 0xffffffff
mov dword [esp + 8], eax
mov eax, 0xffffffff
mov dword [esp + 0xc], eax
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.00428dc0
mov dword [ebp - 0x6b8], eax
jmp 0x4246b5
mov dword [esi + 0x18], 0x70747468
mov byte [esi + 0x1c], 0
jmp 0x42535e
mov edx, dword [ebp - 0x6e8]
mov esi, 0x508f53
mov dword [esp + 4], esi
mov dword [esp], edi
mov dword [esp + 8], edx
call fcn.0042c310
jmp 0x425ae0