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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c4
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebp + 0xc]
mov eax, dword [edi]
mov dword [esp + 0x10], ecx
mov ecx, dword [ebx + 4]
mov edx, dword [ecx + eax*4]
mov eax, dword [edx]
mov eax, dword [eax]
push eax
mov dword [esp + 0x34], eax
call fcn.00480265
add esp, 4
mov dword [esp + 0x54], eax
add eax, 1
je 0x49e9ad
lea esi, [eax + 7]
shr esi, 3
add esi, esi
add esi, esi
add esi, esi
xor ecx, ecx
mov eax, esi
mov edx, 2
mul edx
seto cl
mov dword [esp + 0x58], esi
neg ecx
or ecx, eax
push ecx
call fcn.004806aa
mov edx, dword [esp + 0x34]
mov esi, eax
mov eax, dword [esp + 0x58]
add esp, 4
lea ecx, [eax + eax + 2]
push ecx
push edx
push esi
mov dword [esp + 0x5c], esi
call fcn.0047ff00
add esp, 0xc
push 4
call fcn.004806aa
add esp, 4
test eax, eax
je 0x49e9b7
mov dword [eax], 1
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x138], 0
mov dword [esp + 0x5c], eax
je 0x49ea96
cmp dword [eax], 1
jg 0x49e9be
mov eax, dword [esp + 0x54]
push eax
push esi
call dword [fcn.00483640]
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x134]
test eax, eax
jne 0x49ea25
mov esi, dword [edx + 0x12c]
test esi, esi
je 0x49ea96
mov dword [esp + 0x1c], esi
lea ecx, [ecx]
mov edx, dword [esi + 4]
cmp edx, dword [esp + 0x54]
jne 0x4719c7
test edx, edx
jbe 0x470a6b
mov ecx, dword [esp + 0x50]
mov eax, dword [esi]
jmp 0x470a50
mov si, word [eax]
cmp si, word [ecx]
jne 0x4719c3
add eax, 2
add ecx, 2
sub edx, 1
jne 0x470a50
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x5c]
add dword [eax], 0xffffffff
jne 0x470a8e
mov eax, dword [esp + 0x50]
push eax
call fcn.004803bd
mov ecx, dword [esp + 0x60]
add esp, 4
push ecx
call fcn.004803bd
add esp, 4
test esi, esi
je 0x49ea9f
mov eax, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 0x18]
mov dword [esp + 0x68], edx
mov edx, dword [ebx + 4]
mov dword [esp + 0x4c], eax
mov eax, dword [edi]
mov dword [esp + 0x9c], ecx
mov ecx, dword [edx + eax*4]
movsx edx, word [ecx + 0xa]
mov ecx, dword [esp + 0x10]
xor esi, esi
inc eax
mov dword [esp + 0x30], edx
mov edx, dword [ecx + 0x140]
mov dword [edi], eax
mov ecx, dword [ebx + 4]
mov dword [esp + 0x38], esi
mov dword [esp + 0x40], 1
mov dword [esp + 0x44], esi
mov dword [esp + 0xfc], edx
mov edx, dword [ecx + eax*4]
cmp word [edx + 8], 0x47
mov dword [esp + 0x78], 0x4883bc
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], esi
mov dword [esp + 0x50], 0x48ccd0
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
jne 0x49ea19
inc eax
mov edx, eax
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x74], edx
mov dword [edi], eax
mov ecx, dword [ebx + 4]
mov ecx, dword [ecx + eax*4]
movsx ecx, word [ecx + 8]
cmp ecx, 0x47
jge 0x470b46
inc eax
jmp 0x470b32
sub ecx, 0x47
je 0x49eb04
sub ecx, 1
jne 0x49ead7
cmp dword [esp + 0x24], ecx
jne 0x49eafa
mov dword [esp + 0x28], eax
inc eax
mov dword [edi], eax
mov eax, dword [esp + 0x68]
cmp eax, dword [0x4a6898]
jg 0x49eb0d
cmp eax, ecx
jle 0x49eb0d
shl eax, 4
add eax, dword [0x4a68cc]
mov dword [esp + 0x60], eax
cmp dword [esp + 0x4c], ecx
mov dword [esp + 0x48], ecx
jle 0x470d6b
mov dword [esp + 0x18], 3
mov dword [esp + 0x24], ecx
jmp 0x470bb0
cmp edx, dword [esp + 0x28]
jae 0x470d6b
mov ecx, dword [esp + 0x60]
mov eax, dword [ecx + 4]
mov ecx, dword [esp + 0x18]
inc dword [esp + 0x48]
lea eax, [eax + ecx*4]
mov ecx, dword [eax]
xor bl, bl
cmp word [ecx + 8], 0
mov dword [esp + 0x2c], 0
je 0x49eb16
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + edx*4]
cmp word [edx + 8], 0x33
je 0x470bf5
xor bl, bl
mov edi, dword [esp + 0x58]
mov eax, dword [esp + 0x5c]
cmp edi, eax
je 0x4719db
push 1
call fcn.004806aa
add esp, 4
test eax, eax
je 0x49eb51
mov byte [eax], bl
mov edx, dword [esp + 0x54]
mov dword [edx + edi*4], eax
inc edi
mov dword [esp + 0x58], edi
test bl, bl
jne 0x49eb58
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x49ec70
mov eax, dword [esp + 0x40]
cmp eax, 8
je 0x49ec83
cmp eax, 0xa
je 0x49eca8
cmp eax, 5
je 0x49ecbf
cmp eax, 0xb
je 0x49eccd
cmp eax, 0xc
je 0x49ecef
mov eax, dword [esp + 0x84]
mov dword [esp + 0x40], 1
mov dword [esp + 0x38], 0
cmp esi, eax
je 0x471a38
mov edi, dword [esp + 0x7c]
push 0x10
call fcn.004806aa
add esp, 4
test eax, eax
je 0x49eeec
mov ebx, eax
mov eax, dword [esp + 0x40]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], 0
cmp eax, 1
jne 0x49ed06
mov edx, dword [esp + 0x38]
mov dword [ebx], edx
mov eax, ebx
mov ebx, dword [esp + 0x28]
mov ecx, dword [ebp + 8]
mov dword [edi + esi*4], eax
mov eax, dword [edi + esi*4]
inc esi
push ebx
push eax
lea eax, [esp + 0x7c]
push eax
push ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x90], esi
call fcn.00470100
test eax, eax
jne 0x4a0793
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x60]
mov ecx, dword [edx + 4]
mov edx, dword [ecx + eax*4 + 4]
inc eax
cmp word [edx + 8], 0x41
mov dword [esp + 0x18], eax
je 0x49eef3
mov edx, dword [esp + 0x74]
cmp edx, ebx
je 0x470d6b
mov edi, dword [ebp + 8]
mov eax, dword [edi + 4]
mov eax, dword [eax + edx*4]
mov ecx, 0x40
cmp word [eax + 8], cx
jne 0x49ef44
lea eax, [edx + 1]
cmp eax, dword [esp + 0x28]
je 0x49ef44
mov edi, dword [esp + 0x18]
mov edx, eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x74], edx
mov eax, dword [eax + 4]
mov eax, dword [eax + edi*4]
cmp word [eax + 8], cx
jne 0x470d58
inc dword [esp + 0x18]
mov eax, dword [esp + 0x24]
inc eax
cmp eax, dword [esp + 0x4c]
mov dword [esp + 0x24], eax
jl 0x470bb0
mov eax, dword [esp + 0x48]
cmp eax, dword [esp + 0x9c]
jl 0x4a0782
cmp eax, dword [esp + 0x4c]
jg 0x4a0782
cmp edx, dword [esp + 0x28]
jne 0x4a0782
mov ebx, dword [esp + 0x68]
xor esi, esi
xor eax, eax
cmp ebx, esi
mov dword [esp + 0x18], 3
mov dword [esp + 0x1c], esi
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], ebx
jl 0x49ef56
cmp byte [0x4a56e5], 0
jne 0x49ef62
push 0xc
call fcn.004806aa
add esp, 4
cmp eax, esi
je 0x49f008
mov edi, eax
mov dword [edi], esi
mov edx, dword [esp + 0xa4]
mov dword [edi + 4], edx
cmp dword [esp + 0xa4], esi
jl 0x49ef86
mov eax, dword [esp + 0xa0]
cmp eax, esi
jne 0x49ef8e
mov dword [edi], esi
mov ecx, dword [0x4a56e0]
mov dword [edi + 8], ecx
mov dword [0x4a56e0], edi
mov eax, dword [esp + 0xa0]
inc dword [0x4a56dc]
cmp eax, esi
jne 0x49f00f
mov eax, 1
cmp dword [esp + 0x4c], eax
jl 0x4712d5
mov dword [esp + 0x24], eax
lea esp, [esp]
mov ecx, dword [esp + 0x60]
mov ecx, dword [ecx + 4]
mov esi, dword [esp + 0x18]
xor ebx, ebx
or edx, 0xffffffff
mov word [esp + 0xa8], dx
mov dword [esp + 0x88], 0x48623c
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x9c], ebx
mov edi, dword [ecx + esi*4]
lea edx, [ecx + esi*4]
xor eax, eax
mov word [esp + 0xaa], ax
mov dword [esp + 0x2c], eax
cmp word [edi + 8], bx
je 0x49f068
mov edx, dword [esp + 0x24]
cmp edx, dword [esp + 0x48]
jg 0x49f0cf
mov edi, dword [esp + 0x54]
mov edx, dword [esp + 0x1c]
mov edi, dword [edi + edx*4]
or eax, 0x200
cmp byte [edi], 0
jne 0x49f09f
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x7c]
mov edx, dword [edx + esi*4]
mov esi, eax
mov eax, dword [esp + 0x18]
add eax, eax
add eax, eax
mov dword [esp + 0x30], eax
mov eax, dword [eax + ecx]
mov edi, dword [eax]
cmp dword [0x4a56dc], ebx
je 0x49f1a4
cmp byte [0x4a56e5], 0
mov dword [esp + 0x20], edx
jne 0x49f1b7
mov ebx, dword [0x4a56e0]
xor eax, eax
mov dword [esp + 0x28], ebx
cmp dword [ebx], eax
je 0x470ff0
test byte [0x4a6d7c], 1
mov byte [esp + 0x17], al
je 0x49f1c5
mov dword [0x4a6d78], eax
mov dword [0x4a6d74], eax
mov eax, 0x4a6d5c
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], eax
jmp 0x470f40
mov eax, dword [edi + 4]
mov ecx, dword [ebx]
mov edx, dword [ecx + 4]
test eax, eax
je 0x49f1ea
test edx, edx
je 0x49f1f2
cmp eax, edx
jb 0x49f212
test eax, eax
jbe 0x49f203
mov ecx, dword [ecx]
mov edx, eax
mov eax, dword [edi]
mov edi, edi
mov bx, word [eax]
cmp bx, word [ecx]
jne 0x470f88
add eax, 2
add ecx, 2
sub edx, 1
jne 0x470f70
jmp 0x49f1ff
mov dx, bx
mov ebx, dword [esp + 0x28]
cmp dx, word [ecx]
jb 0x49f20a
mov eax, 1
test eax, eax
jl 0x49f220
jle 0x49f2bb
mov eax, dword [ebx]
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x49f272
cmp byte [esp + 0x17], 0
mov eax, dword [ebx]
mov ecx, dword [eax + 0x18]
mov edx, dword [esp + 0x2c]
mov dword [edx + 0x1c], ecx
mov eax, dword [ebx]
mov ecx, dword [eax + 0x1c]
mov edx, dword [esp + 0x34]
mov dword [edx + 0x18], ecx
mov eax, dword [ebx]
mov ecx, dword [0x4a6d78]
mov dword [eax + 0x18], ecx
mov edx, dword [ebx]
mov eax, dword [0x4a6d74]
mov dword [edx + 0x1c], eax
jne 0x49f2c5
and esi, 0xff00
push 0x20
mov dword [esp + 0x68], esi
call fcn.004806aa
add esp, 4
test eax, eax
je 0x49f2e8
mov esi, eax
xor ecx, ecx
mov eax, 8
mov dword [esi + 8], eax
mov edx, 2
mul edx
seto cl
mov dword [esi + 4], 0
neg ecx
or ecx, eax
push ecx
call fcn.004806aa
add esp, 4
xor ecx, ecx
mov dword [esi], eax
push 4
mov word [eax], cx
call fcn.004806aa
add esp, 4
test eax, eax
je 0x49f2e1
mov dword [eax], 1
mov dword [esi + 0xc], eax
mov ebx, esi
cmp ebx, edi
je 0x471092
mov eax, dword [ebx + 0xc]
cmp dword [eax], 1
jg 0x49f2ef
mov esi, dword [edi + 4]
lea eax, [esi + 1]
mov dword [ebx + 4], esi
cmp dword [ebx + 8], eax
jb 0x49f30e
mov edx, dword [ebx + 4]
mov ecx, dword [edi]
lea eax, [edx + edx + 2]
mov edx, dword [ebx]
push eax
push ecx
push edx
call fcn.0047ff00
add esp, 0xc
mov eax, dword [esp + 0x64]
push 0x10
mov dword [ebx + 0x10], eax
call fcn.004806aa
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x4710fd
mov edi, dword [esp + 0x20]
mov esi, eax
mov eax, dword [edi + 8]
mov dword [esi + 8], eax
dec eax
mov dword [esp + 0x34], esi
mov dword [esi + 0xc], ecx
cmp eax, 0xb
ja 0x4710f9
jmp dword [eax*4 + 0x403f18]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x28]
xor edi, edi
mov dword [ebx + 0x14], ecx
mov dword [ebx + 0x1c], edi
mov dword [ebx + 0x18], edi
mov esi, dword [eax]
cmp esi, edi
je 0x471a91
test byte [0x4a6d7c], 1
je 0x49f4c2
mov eax, 0x4a6d5c
mov dword [0x4a6d78], edi
mov dword [0x4a6d74], edi
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], eax
lea esp, [esp]
mov eax, dword [ebx + 4]
mov edx, dword [esi + 4]
cmp eax, edi
je 0x49f4e5
cmp edx, edi
je 0x49f4ed
cmp eax, edx
jb 0x49f50d
cmp eax, edi
jbe 0x49f4fc
mov ecx, dword [esi]
mov edx, eax
mov eax, dword [ebx]
lea esp, [esp]
mov di, word [eax]
cmp di, word [ecx]
jne 0x471188
add eax, 2
add ecx, 2
sub edx, 1
jne 0x471170
jmp 0x49f4fa
mov dx, word [eax]
cmp dx, word [ecx]
jb 0x49f503
mov eax, 1
xor edi, edi
cmp eax, edi
jl 0x49f51b
jle 0x4711b6
lea eax, [esi + 0x1c]
mov dword [esp + 0x20], eax
mov eax, dword [eax]
cmp eax, edi
jne 0x49f57a
mov edx, dword [esi + 0x18]
mov eax, dword [esp + 0x34]
mov dword [eax + 0x1c], edx
mov ecx, dword [esi + 0x1c]
mov edx, dword [esp + 0x2c]
mov dword [edx + 0x18], ecx
mov eax, dword [0x4a6d78]
mov edx, dword [esi + 4]
mov dword [esi + 0x18], eax
mov ecx, dword [0x4a6d74]
mov dword [esi + 0x1c], ecx
mov eax, dword [ebx + 4]
cmp eax, edi
je 0x49f5c8
cmp edx, edi
je 0x49f5d0
cmp eax, edx
jb 0x49f5f0
cmp eax, edi
jbe 0x49f5df
mov ecx, dword [esi]
mov edx, eax
mov eax, dword [ebx]
mov di, word [eax]
cmp di, word [ecx]
jne 0x47121f
add eax, 2
add ecx, 2
sub edx, 1
jne 0x471207
jmp 0x49f5dd
mov dx, word [eax]
cmp dx, word [ecx]
jb 0x49f5e6
mov eax, 1
xor edi, edi
cmp eax, edi
jl 0x49f5fe
jle 0x49f60f
mov ecx, dword [0x4a6d74]
mov dword [ebx + 0x1c], ecx
mov dword [ebx + 0x18], esi
mov dword [esi + 0x1c], edi
mov eax, dword [esp + 0x28]
mov dword [eax], ebx
mov edx, dword [esp + 0x60]
mov eax, dword [edx + 4]
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + eax + 4]
cmp word [edx + 8], 0x41
je 0x49f616
add dword [esp + 0x18], 2
mov ax, word [esp + 0xa8]
inc dword [esp + 0x1c]
cmp ax, 0x30
jge 0x49f64a
cmp dword [esp + 0x90], 0
mov dword [esp + 0x88], 0x48623c
ja 0x49f66e
mov ecx, dword [esp + 0x8c]
push ecx
mov dword [esp + 0x94], 0
call fcn.004803bd
mov eax, dword [esp + 0x28]
inc eax
add esp, 4
cmp eax, dword [esp + 0x4c]
mov dword [esp + 0x24], eax
jle 0x470e40
mov ebx, dword [esp + 0x68]
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x48]
xor eax, eax
mov dword [esp + 0x120], eax
mov dword [esp + 0x12c], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x13c], eax
mov eax, dword [edi]
mov dword [edi + 0x140], edx
mov ecx, dword [eax + 4]
cmp byte [ecx + edi + 0xd], 0
lea esi, [ecx + edi + 4]
jne 0x49f697
push 0x30
call fcn.004806aa
add esp, 4
test eax, eax
je 0x49f70f
xor ecx, ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ecx
mov dword [eax], ecx
mov byte [eax + 0x10], cl
mov dword [eax + 0x14], ecx
mov byte [eax + 0x18], cl
mov dword [eax + 0x1c], ecx
mov byte [eax + 0x20], cl
mov edx, dword [esi + 4]
mov dword [eax + 0x28], edx
mov dword [esi + 4], eax
inc dword [esi]
mov eax, dword [edi + 0xec]
mov edx, dword [edi + 0x164]
mov dword [esp + 0xac], eax
lea eax, [edi + 0x164]
mov dword [esp + 0x18], eax
mov eax, dword [edi + 0xe4]
inc ebx
cmp eax, 0x1268
mov dword [esp + 0x60], edx
mov dword [esp + 0x34], ebx
jge 0x49f718
inc eax
mov dword [edi + 0xe4], eax
cmp eax, 1
je 0x49f731
cmp byte [edi + 0xf4], 0
mov byte [edi + 0x13c], 0
jne 0x4713bd
jmp 0x4713b0
cmp byte [edi + 0x13c], 0
je 0x471868
mov eax, dword [edi + 0xe4]
mov byte [edi + 0x13c], 0
cmp eax, 1
je 0x4a019d
dec eax
mov dword [edi + 0xe4], eax
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x18]
cmp esi, dword [edi]
jb 0x4a021f
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xac]
mov edx, dword [eax]
mov dword [eax + 0xec], ecx
mov ecx, dword [edx + 4]
cmp byte [ecx + eax + 0xd], 0
lea eax, [ecx + eax + 4]
jne 0x4a022d
mov ecx, dword [eax + 4]
cmp byte [ecx + 0x10], 0
je 0x4a0456
cmp byte [eax + 9], 0
mov ecx, dword [ebp + 0x14]
mov byte [ecx], 1
jne 0x4a0238
mov esi, dword [eax + 4]
mov ebx, dword [ebp + 0x10]
cmp ebx, esi
je 0x4714c1
mov eax, dword [ebx + 0xc]
test eax, eax
jne 0x4a0243
mov eax, dword [ebx + 8]
cmp eax, 8
je 0x4a0255
cmp eax, 0xa
je 0x4a0276
cmp eax, 5
je 0x4a028b
cmp eax, 0xb
je 0x4a0297
cmp eax, 0xc
je 0x4a02b5
mov dword [ebx + 8], 1
mov dword [ebx], 0
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
cmp eax, 4
jne 0x4a02ca
push 0x10
call fcn.004806aa
add esp, 4
test eax, eax
je 0x4a0447
mov ecx, dword [esi + 0xc]
mov edx, dword [ecx]
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov ecx, dword [ecx + 0xc]
mov dword [eax + 0xc], ecx
inc dword [ecx]
mov dword [ebx + 0xc], eax
mov edi, dword [esp + 0x10]
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
cmp byte [edx + edi + 0xd], 0
mov eax, dword [edx + edi + 8]
lea esi, [edx + edi + 4]
jne 0x4a044e
cmp byte [eax + 0x18], 0
jne 0x4a0476
cmp byte [esi + 9], 0
jne 0x4a048c
mov eax, dword [esi + 4]
cmp byte [eax + 0x20], 0
jne 0x4a0497
cmp byte [esi + 9], 0
jne 0x4a04ad
cmp byte [esi + 8], 0
jne 0x4a04cd
mov ebx, dword [esi + 4]
mov ecx, dword [ebx + 0x28]
mov dword [esp + 0xac], ecx
test ebx, ebx
je 0x471595
mov edi, dword [ebx + 0xc]
test edi, edi
je 0x47154b
mov eax, dword [edi + 0xc]
dec dword [eax]
mov edx, dword [edi + 0xc]
cmp dword [edx], 0
je 0x4a04d6
push edi
call fcn.004803bd
add esp, 4
mov dword [ebx + 0xc], 0
mov eax, dword [ebx + 8]
cmp eax, 8
je 0x4a04f2
cmp eax, 0xa
je 0x4a0513
cmp eax, 5
je 0x4a0528
cmp eax, 0xb
je 0x4a0534
cmp eax, 0xc
je 0x4a0552
push ebx
mov dword [ebx + 8], 1
mov dword [ebx], 0
call fcn.004803bd
mov edi, dword [esp + 0x14]
add esp, 4
mov eax, dword [esp + 0xac]
mov dword [esi + 4], eax
mov byte [esi + 9], 0
dec dword [esi]
mov ecx, dword [edi]
mov eax, dword [ecx + 4]
add eax, edi
cmp byte [eax + 0xd], 0
jne 0x4a0567
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0x134]
mov dword [ecx + 0x14], edx
cmp byte [eax + 0xd], 0
mov eax, dword [eax + 8]
jne 0x4a0572
mov byte [eax + 0x18], 0
mov ecx, dword [edi]
mov eax, dword [ecx + 4]
add eax, edi
cmp byte [eax + 0xd], 0
jne 0x4a057a
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0x13c]
mov dword [ecx + 0x1c], edx
cmp byte [eax + 0xd], 0
mov eax, dword [eax + 8]
jne 0x4a0585
mov byte [eax + 0x20], 0
cmp byte [0x4a56e5], 0
jne 0x4a058d
mov ecx, dword [0x4a56e0]
cmp byte [0x4a56e4], 0
jne 0x4a05af
mov esi, dword [ecx]
mov edx, dword [ecx + 8]
mov dword [esp + 0xac], edx
mov dword [esp + 0x30], ecx
test esi, esi
je 0x4716ff
mov eax, dword [esi + 0x18]
test eax, eax
je 0x471648
push eax
call fcn.0046fff0
mov eax, dword [esi + 0x1c]
test eax, eax
jne 0x4a05bb
cmp byte [esi + 0x10], 0
jne 0x4716d2
mov ebx, dword [esi + 0x14]
test ebx, ebx
je 0x4716d2
mov edi, dword [ebx + 0xc]
test edi, edi
je 0x471688
mov eax, dword [edi + 0xc]
dec dword [eax]
mov eax, dword [edi + 0xc]
cmp dword [eax], 0
je 0x4a05ca
push edi
call fcn.004803bd
add esp, 4
mov dword [ebx + 0xc], 0
mov eax, dword [ebx + 8]
cmp eax, 8
je 0x4a05e6
cmp eax, 0xa
je 0x4a0607
cmp eax, 5
je 0x4a061c
cmp eax, 0xb
je 0x4a0628
cmp eax, 0xc
je 0x4a0646
push ebx
mov dword [ebx + 8], 1
mov dword [ebx], 0
call fcn.004803bd
mov edi, dword [esp + 0x14]
add esp, 4
mov eax, dword [esi + 0xc]
dec dword [eax]
mov ecx, dword [esi + 0xc]
cmp dword [ecx], 0
jne 0x4716f6
mov edx, dword [esi]
push edx
call fcn.004803bd
mov eax, dword [esi + 0xc]
add esp, 4
push eax
call fcn.004803bd
add esp, 4
push esi
call fcn.004803bd
add esp, 4
mov ecx, dword [esp + 0x30]
push ecx
call fcn.004803bd
mov edx, dword [esp + 0xb0]
add esp, 4
mov dword [0x4a56e0], edx
mov byte [0x4a56e5], 0
mov eax, dword [esp + 0xfc]
dec dword [0x4a56dc]
mov dword [edi + 0x140], eax
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x4a065b
mov eax, dword [esp + 0x40]
cmp eax, 8
je 0x4a066e
cmp eax, 0xa
je 0x4a0693
cmp eax, 5
je 0x4a06aa
cmp eax, 0xb
je 0x4a06b8
cmp eax, 0xc
je 0x4a06da
mov edi, dword [esp + 0x58]
mov ebx, dword [esp + 0x54]
xor esi, esi
mov dword [esp + 0x40], 1
mov dword [esp + 0x38], esi
test edi, edi
jbe 0x4717a1
lea ebx, [ebx]
mov edx, dword [ebx + esi*4]
push edx
call fcn.004803bd
inc esi
add esp, 4
cmp esi, edi
jb 0x471790
push ebx
call fcn.004803bd
add esp, 4
cmp dword [esp + 0x80], 0
jbe 0x471847
xor ebx, ebx
lea ebx, [ebx]
mov eax, dword [esp + 0x7c]
mov esi, dword [eax + ebx*4]
test esi, esi
je 0x471839
mov edi, dword [esi + 0xc]
test edi, edi
je 0x4717f3
mov eax, dword [edi + 0xc]
dec dword [eax]
mov ecx, dword [edi + 0xc]
cmp dword [ecx], 0
je 0x4a06f1
push edi
call fcn.004803bd
add esp, 4
mov dword [esi + 0xc], 0
mov eax, dword [esi + 8]
cmp eax, 8
je 0x4a070d
cmp eax, 0xa
je 0x4a072e
cmp eax, 5
je 0x4a0743
cmp eax, 0xb
je 0x4a074f
cmp eax, 0xc
je 0x4a076d
push esi
mov dword [esi + 8], 1
mov dword [esi], 0
call fcn.004803bd
add esp, 4
inc ebx
cmp ebx, dword [esp + 0x80]
jb 0x4717c0
mov edx, dword [esp + 0x7c]
push edx
call fcn.004803bd
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
cmp byte [0x494c8b], 0
jne 0x4718b8
cmp byte [0x4a5e18], 0
jne 0x49f73e
mov esi, dword [0x4836c0]
push 1
push 0
push 0
push 0
lea eax, [esp + 0xc4]
push eax
call esi
test eax, eax
jne 0x471aa0
cmp byte [0x494c8e], 1
je 0x49f765
cmp dword [edi + 0xf0], 1
je 0x4a0180
cmp dword [0x4a5dd4], 0
jne 0x49f782
xor ebx, ebx
cmp byte [0x494c94], 1
je 0x49f837
cmp dword [edi + 0x46c], ebx
jne 0x49f851
cmp byte [0x4a5dec], 0
jne 0x49f9a5
push edi
call fcn.00472490
cmp al, 1
je 0x4719af
cmp byte [0x4a5f60], 0
jne 0x49fc19
mov eax, dword [edi + 0xf0]
cmp eax, 7
je 0x49fcac
cmp eax, 8
je 0x49fd37
cmp eax, 9
je 0x49fd37
cmp eax, 2
je 0x49fe73
cmp eax, 3
je 0x49fe73
cmp eax, 4
je 0x49fe73
cmp eax, 5
je 0x49fe73
cmp eax, 6
je 0x49fe73
mov ecx, dword [esp + 0x34]
mov dword [edi + 0xec], ecx
mov eax, ecx
inc ecx
cmp eax, dword [0x4a6898]
mov dword [esp + 0x34], ecx
jg 0x4a0001
cmp eax, ebx
jle 0x4a0001
shl eax, 4
add eax, dword [0x4a68cc]
cmp eax, ebx
je 0x4a0001
mov esi, eax
mov ecx, dword [esi + 4]
mov dword [esp + 0x24], ebx
mov edx, dword [ecx]
movsx eax, word [edx + 8]
cmp eax, ebx
jne 0x4a0010
lea eax, [esp + 0x34]
push eax
push esi
push edi
call fcn.00471b50
cmp byte [edi + 0xf4], 0
jne 0x4713bd
xor ecx, ecx
jmp 0x4713b0
mov esi, dword [esp + 0x1c]
mov esi, dword [esi + 0x20]
mov dword [esp + 0x1c], esi
test esi, esi
jne 0x470a30
jmp 0x49ea96
add eax, eax
cmp eax, 4
jae 0x4719e7
mov eax, 4
xor ecx, ecx
mov dword [esp + 0x5c], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004806aa
mov edx, dword [esp + 0x58]
add esp, 4
lea ecx, [edi*4]
push ecx
push edx
push eax
mov dword [esp + 0x70], eax
call fcn.0047ff00
mov eax, dword [esp + 0x60]
add esp, 0xc
push eax
call fcn.004803bd
mov ecx, dword [esp + 0x68]
add esp, 4
mov dword [esp + 0x54], ecx
jmp 0x470c05
add eax, eax
cmp eax, 4
jae 0x471a44
mov eax, 4
xor ecx, ecx
mov dword [esp + 0x84], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004806aa
mov ebx, dword [esp + 0x80]
mov edi, eax
add esp, 4
lea eax, [esi*4]
push eax
push ebx
push edi
call fcn.0047ff00
add esp, 0xc
push ebx
call fcn.004803bd
add esp, 4
mov dword [esp + 0x7c], edi
jmp 0x470c89
mov dword [ebx + 0x1c], edi
mov dword [ebx + 0x18], edi
jmp 0x471253
cmp dword [esp + 0xb8], 0x12
je 0x49f74f
lea ecx, [esp + 0xb4]
push ecx
mov ecx, 0x4a5de0
call fcn.0047b340
test eax, eax
jne 0x471afa
lea edx, [esp + 0xb4]
push edx
mov ebx, 0x4a5de0
call fcn.0047b360
test eax, eax
jne 0x471af6
lea eax, [esp + 0xb4]
push eax
call dword [0x4836b8]
lea ecx, [esp + 0xb4]
push ecx
call dword [0x4836b4]
mov edi, dword [esp + 0x10]
push 1
push 0
push 0
push 0
lea edx, [esp + 0xc4]
push edx
call esi
test eax, eax
je 0x47189e
jmp 0x471aa0
mov esi, 8
jmp 0x47098b
xor eax, eax
jmp 0x4709df
mov eax, dword [esp + 0x5c]
dec dword [eax]
lea esi, [esp + 0x50]
call fcn.0047b2a0
mov edx, dword [esp + 0x54]
inc edx
push edx
call 0x4b73a3
xor ecx, ecx
mov esi, eax
mov edx, 2
mul edx
seto cl
mov dword [esp + 0x58], esi
neg ecx
or ecx, eax
push ecx
call fcn.004806aa
mov edx, dword [esp + 0x54]
mov esi, eax
mov eax, dword [esp + 0x58]
add esp, 4
lea ecx, [eax + eax + 2]
push ecx
push edx
push esi
call fcn.0047ff00
add esp, 0xc
mov dword [esp + 0x50], esi
jmp 0x4709fd
mov eax, dword [esp + 0x30]
push eax
push 0x6f
jmp 0x4a0789
mov dword [esp + 0x68], eax
mov eax, dword [edx + 0x138]
sub eax, 1
js 0x49ea96
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x48]
add eax, ecx
cdq
sub eax, edx
mov edx, dword [esp + 0x68]
sar eax, 1
mov ecx, dword [edx + eax*4]
lea esi, [esp + 0x50]
mov dword [esp + 0x1c], eax
call fcn.00473120
test eax, eax
jge 0x49ea7d
mov eax, dword [esp + 0x1c]
dec eax
mov dword [esp + 0x48], eax
jmp 0x49ea8c
jle 0x49eab4
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x48]
cmp dword [esp + 0x4c], edx
jle 0x49ea44
lea ecx, [esp + 0x50]
call fcn.004735c0
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x10]
push eax
push edi
push ebx
push ecx
call 0x4ddfa7
jmp 0x471856
mov eax, dword [esp + 0x48]
cmp dword [esp + 0x4c], eax
jg 0x49ea96
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x1c]
mov esi, dword [ecx + edx*4]
lea ecx, [esp + 0x50]
call fcn.004735c0
jmp 0x470a8e
sub ecx, 0x37
jne 0x470b43
mov edx, eax
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edx*4 - 4]
movsx edx, word [ecx + 0xa]
mov eax, dword [esp + 0x10]
push edx
push 0x6f
push eax
jmp 0x4a078e
dec dword [esp + 0x24]
inc eax
jmp 0x470b32
inc dword [esp + 0x24]
jmp 0x470b43
mov dword [esp + 0x60], ecx
jmp 0x470b8e
mov ecx, dword [eax]
mov ecx, dword [ecx]
cmp ecx, 0x24
jne 0x49eb2a
mov bl, 1
jmp 0x49eb3b
cmp ecx, 0x1e
jne 0x49eefd
mov dword [esp + 0x2c], 0x100
mov ecx, dword [eax + 4]
inc dword [esp + 0x18]
add eax, 4
cmp word [ecx + 8], 0
je 0x49eb16
jmp 0x470be3
xor eax, eax
jmp 0x470c19
mov eax, dword [ebp + 8]
mov edx, dword [eax + 4]
mov ecx, dword [esp + 0x74]
mov eax, dword [edx + ecx*4]
cmp word [eax + 8], 0x33
jne 0x49ef09
mov esi, dword [eax]
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x20]
push edx
xor ecx, ecx
call fcn.0046f410
test al, al
je 0x49ef26
test dword [esp + 0x20], 0x100
je 0x49ebc8
test dword [esp + 0x2c], 0x100
jne 0x49ebc8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 4]
mov eax, dword [esp + 0x74]
mov ecx, dword [edx + eax*4]
movsx edx, word [ecx + 0xa]
mov eax, dword [esp + 0x10]
push edx
push 0xb0
push eax
jmp 0x4a078e
mov eax, dword [esp + 0x1c]
mov edi, 1
add dword [esp + 0x74], edi
add dword [esp + 0x18], edi
cmp dword [eax + 8], 5
jne 0x49ec3d
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 4]
mov eax, dword [esp + 0x74]
mov edx, dword [edx + eax*4]
cmp word [edx + 8], 0x4e
jne 0x49ec3d
mov edx, dword [esp + 0x10]
push 0
lea eax, [esp + 0x20]
push eax
push edx
lea eax, [esp + 0x80]
call fcn.0046f250
test eax, eax
je 0x49ec3d
lea esi, [esp + 0x38]
call fcn.00472780
lea ecx, [esp + 0x50]
call 0x4b287b
lea ecx, [esp + 0x78]
call fcn.0047fa00
mov eax, edi
jmp 0x471856
lea esi, [esp + 0x38]
call fcn.00472780
mov eax, dword [esp + 0x1c]
push esi
lea esi, [esp + 0x7c]
mov dword [esp + 0x44], 6
mov dword [esp + 0x3c], eax
call fcn.0046fb40
mov esi, dword [esp + 0x80]
mov ebx, dword [esp + 0x28]
jmp 0x470d0d
push eax
call 0x4b408c
mov dword [esp + 0x44], 0
jmp 0x470c39
mov eax, dword [esp + 0x38]
test eax, eax
je 0x470c6a
push eax
call dword [0x483428]
mov edx, dword [esp + 0x38]
push edx
call fcn.004803bd
add esp, 4
jmp 0x470c6a
mov eax, dword [esp + 0x38]
test eax, eax
je 0x470c6a
push eax
call 0x4b52f1
jmp 0x470c6a
lea eax, [esp + 0x38]
call fcn.0047cea0
jmp 0x470c6a
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 4]
push ecx
call fcn.004803bd
mov edx, dword [esp + 0x3c]
add esp, 4
push edx
call fcn.004803bd
add esp, 4
jmp 0x470c6a
mov eax, dword [esp + 0x38]
test eax, eax
je 0x470c6a
push eax
call 0x4bc1a3
jmp 0x470c6a
dec eax
cmp eax, 0xb
ja 0x49eedc
jmp dword [eax*4 + 0x432bb9]
mov edi, dword [esp + 0x7c]
mov esi, dword [esp + 0x80]
jmp 0x470cbe
xor eax, eax
jmp 0x470cc0
add dword [esp + 0x18], 2
jmp 0x470d0d
push 0xffffffffffffffff
push 0x91
jmp 0x4a0789
mov edx, dword [ebp + 8]
mov eax, dword [edx + 4]
mov ecx, dword [eax + ecx*4]
movsx edx, word [ecx + 0xa]
mov eax, dword [esp + 0x10]
push edx
push 0x91
push eax
jmp 0x4a078e
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 4]
mov eax, dword [esp + 0x74]
mov ecx, dword [edx + eax*4]
movsx edx, word [ecx + 0xa]
mov eax, dword [esp + 0x10]
push edx
push 0x79
push eax
jmp 0x4a078e
mov ecx, dword [edi + 4]
mov edx, dword [ecx + edx*4]
movsx eax, word [edx + 0xa]
push eax
push 0x6f
jmp 0x4a0789
mov dword [esp + 0xa4], esi
jmp 0x470dba
mov edx, dword [0x4a56e0]
mov dword [edx], eax
mov eax, dword [esp + 0xa4]
mov ecx, dword [0x4a56e0]
mov dword [ecx + 4], eax
mov byte [0x4a56e5], 0
jmp 0x470e14
mov dword [edi + 4], esi
jmp 0x470df4
push 0x20
mov dword [esp + 0x24], eax
call fcn.004806aa
add esp, 4
cmp eax, esi
je 0x49efaf
push eax
call 0x4bb609
jmp 0x49efb1
xor eax, eax
mov ecx, dword [esp + 0x20]
push ecx
mov esi, eax
mov dword [edi], eax
call fcn.0047c8e0
mov edx, dword [edi]
mov esi, dword [esp + 0x20]
mov eax, dword [esi + 0x10]
mov dword [edx + 0x10], eax
mov ecx, dword [edi]
mov edx, dword [esi + 0x14]
mov dword [ecx + 0x14], edx
mov ecx, dword [edi]
xor eax, eax
mov dword [ecx + 0x18], eax
mov edx, dword [edi]
mov dword [edx + 0x1c], eax
mov eax, dword [esi + 0x18]
mov ecx, dword [edi]
add ecx, 0x18
push eax
push ecx
mov ecx, edi
call 0x4bfd4f
mov edx, dword [esi + 0x1c]
mov eax, dword [edi]
push edx
add eax, 0x1c
push eax
mov ecx, edi
call 0x4bfd4f
xor esi, esi
jmp 0x470e05
xor edi, edi
jmp 0x470e05
mov edi, eax
mov eax, dword [eax + 0x18]
cmp eax, esi
je 0x49f029
push eax
lea ecx, [esp + 0xa4]
call fcn.0046fff0
mov eax, dword [edi + 0x1c]
cmp eax, esi
je 0x49f041
push eax
lea ecx, [esp + 0xa4]
call fcn.0046fff0
cmp byte [edi + 0x10], 0
jne 0x49f05d
mov ecx, dword [edi + 0x14]
cmp ecx, esi
je 0x49f05d
push 1
call fcn.0047ce00
push edi
call 0x4b408c
jmp 0x470e29
mov edi, dword [edx]
mov edi, dword [edi]
cmp edi, 0x24
je 0x49f08a
cmp edi, 0x1e
jne 0x49f08e
mov dword [esp + 0x2c], 0x100
mov eax, dword [esp + 0x2c]
inc esi
add edx, 4
mov edi, dword [edx]
cmp word [edi + 8], bx
je 0x49f068
mov dword [esp + 0x18], esi
jmp 0x470e9d
mov edi, dword [esp + 0x7c]
mov edx, dword [edi + edx*4]
mov ecx, dword [ecx + esi*4]
push 1
push eax
push edx
call fcn.004a50e1
push eax
mov eax, dword [ecx]
push eax
call 0x4cbdfd
test al, al
je 0x49f6d6
add esi, 2
mov dword [esp + 0x18], esi
jmp 0x471274
lea ebx, [esp + 0x88]
call fcn.0047c030
mov ecx, dword [esp + 0x60]
mov edx, dword [ecx + 4]
mov dword [esp + 0x9c], 0
mov esi, dword [edx + esi*4 + 8]
movzx eax, word [esi + 8]
cmp ax, 0x4a
je 0x49f10f
cmp ax, 0x49
je 0x49f10f
push esi
jmp 0x49f12c
push esi
lea edi, [esp + 0x8c]
call fcn.00473700
mov eax, dword [esp + 0x60]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x18]
mov eax, dword [ecx + edx*4 + 0xc]
push eax
lea edi, [esp + 0x8c]
call fcn.00473700
mov edi, 0x7f
lea esi, [esp + 0xa0]
call fcn.00473ec0
push esi
lea edi, [esp + 0x8c]
call fcn.00473700
mov ecx, dword [esp + 0x10]
push 0xffffffffffffffff
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0xa4]
push eax
push edi
call fcn.00470100
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x60]
mov edx, dword [edx + 4]
mov ecx, dword [esp + 0x2c]
add eax, eax
add eax, eax
mov esi, dword [eax + edx]
mov esi, dword [esi]
mov dword [esp + 0x30], eax
or ecx, 0x200
mov eax, 1
lea edx, [esp + 0x38]
call fcn.0047b0d0
jmp 0x471255
push esi
mov eax, edi
push edx
mov edi, 0x4a56cc
call fcn.00472d30
jmp 0x471255
mov ecx, dword [0x4a56e0]
mov ebx, dword [ecx + 8]
jmp 0x470f05
or dword [0x4a6d7c], 1
push 0x4a6d5c
call 0x4bb609
push 0x42ac73
call fcn.004803a6
add esp, 4
xor eax, eax
jmp 0x470f24
test edx, edx
jne 0x49f220
test eax, eax
jne 0x470fab
jmp 0x470f58
mov ebx, dword [esp + 0x28]
xor eax, eax
jmp 0x470f9d
or eax, 0xffffffff
jmp 0x470f9d
mov ecx, dword [ecx]
mov eax, dword [edi]
call fcn.00473150
jmp 0x470f9d
mov eax, dword [ebx]
mov eax, dword [eax + 0x18]
test eax, eax
je 0x470fb8
push eax
push edi
call 0x4b40a7
add esp, 8
test al, al
je 0x49f25d
mov eax, dword [ebx]
mov eax, dword [eax + 0x18]
mov ecx, dword [ebx]
mov edx, dword [eax + 0x1c]
mov dword [ecx + 0x18], edx
mov ecx, dword [ebx]
mov dword [eax + 0x1c], ecx
mov dword [ebx], eax
cmp dword [eax + 0x18], 0
je 0x470fb8
mov edx, dword [ebx]
mov eax, dword [esp + 0x34]
mov dword [eax + 0x18], edx
mov eax, dword [ebx]
mov ecx, dword [eax + 0x18]
mov dword [ebx], ecx
jmp 0x470f37
push edi
push eax
call 0x4b40a7
add esp, 8
test al, al
je 0x49f2a2
mov eax, dword [ebx]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebx]
mov ecx, dword [eax + 0x18]
mov dword [edx + 0x1c], ecx
mov edx, dword [ebx]
mov dword [eax + 0x18], edx
mov dword [ebx], eax
cmp dword [eax + 0x1c], 0
je 0x470fb8
mov eax, dword [ebx]
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0x1c], eax
mov eax, dword [ebx]
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x2c], eax
mov dword [ebx], edx
jmp 0x470f40
mov byte [esp + 0x17], 1
jmp 0x470fb8
mov ebx, dword [ebx]
test ebx, ebx
je 0x470ff0
mov ecx, dword [esp + 0x20]
mov ebx, dword [ebx + 0x14]
push ecx
call fcn.00472800
jmp 0x471255
xor eax, eax
jmp 0x471055
xor ebx, ebx
jmp 0x47105a
dec dword [eax]
mov edx, dword [edi + 4]
mov dword [ebx + 4], edx
mov eax, dword [edi + 8]
mov dword [ebx + 8], eax
mov ecx, dword [edi]
mov dword [ebx], ecx
mov edi, dword [edi + 0xc]
mov dword [ebx + 0xc], edi
inc dword [edi]
jmp 0x471092
push eax
call 0x4b73a3
mov dword [ebx + 8], eax
mov eax, dword [ebx]
test eax, eax
je 0x49f32a
push eax
call fcn.004803bd
add esp, 4
mov eax, dword [ebx + 8]
xor ecx, ecx
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004806aa
add esp, 4
xor ecx, ecx
mov dword [ebx], eax
mov word [eax + esi*2], cx
jmp 0x47107c
or dword [0x4a6d7c], 1
push 0x4a6d5c
call 0x4bb609
push 0x42ac73
call fcn.004803a6
add esp, 4
jmp 0x471123
cmp edx, edi
jne 0x49f51b
cmp eax, edi
jne 0x4711a5
jmp 0x471156
xor edi, edi
xor eax, eax
jmp 0x47119b
or eax, 0xffffffff
xor edi, edi
jmp 0x47119b
mov ecx, dword [esi]
mov eax, dword [ebx]
call fcn.00473150
jmp 0x47119b
lea eax, [esi + 0x18]
mov dword [esp + 0x20], eax
mov eax, dword [eax]
cmp eax, edi
je 0x4711b6
push eax
push ebx
mov dword [esp + 0x6c], eax
call 0x4b40a7
add esp, 8
test al, al
je 0x49f564
mov eax, dword [esp + 0x64]
mov ecx, dword [eax + 0x1c]
mov edx, dword [esp + 0x20]
mov dword [edx], ecx
mov dword [eax + 0x1c], esi
mov esi, eax
cmp dword [eax + 0x18], edi
je 0x4711b6
add eax, 0x18
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x20]
mov dword [eax + 0x18], esi
mov dword [esp + 0x2c], esi
mov esi, dword [ecx]
jmp 0x471140
push ebx
push eax
mov dword [esp + 0x6c], eax
call 0x4b40a7
add esp, 8
test al, al
je 0x49f5b2
mov eax, dword [esp + 0x64]
mov ecx, dword [eax + 0x18]
mov edx, dword [esp + 0x20]
mov dword [edx], ecx
mov dword [eax + 0x18], esi
mov esi, eax
cmp dword [eax + 0x1c], edi
je 0x4711b6
add eax, 0x1c
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x20]
mov dword [eax + 0x1c], esi
mov dword [esp + 0x34], esi
mov esi, dword [ecx]
jmp 0x471140
cmp edx, edi
jne 0x49f5fe
cmp eax, edi
jne 0x471240
jmp 0x4711f1
xor edi, edi
xor eax, eax
jmp 0x471232
or eax, 0xffffffff
xor edi, edi
jmp 0x471232
mov ecx, dword [esi]
mov eax, dword [ebx]
call fcn.00473150
jmp 0x471232
mov eax, dword [esi + 0x18]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], esi
mov dword [esi + 0x18], edi
jmp 0x47124f
mov ebx, esi
jmp 0x47124f
mov ecx, dword [esp + 0x18]
mov edx, dword [eax + ecx*4 + 8]
movzx eax, word [edx + 8]
cmp ax, 0x4a
je 0x49f640
cmp ax, 0x49
je 0x49f640
add dword [esp + 0x18], 4
jmp 0x471274
add dword [esp + 0x18], 5
jmp 0x471274
cmp ax, 0x3f
jg 0x47128a
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x47128a
push eax
call 0x4b408c
jmp 0x47128a
xor esi, esi
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + esi*4]
test eax, eax
je 0x49f688
push eax
call 0x4bcd5d
inc esi
cmp esi, dword [esp + 0x90]
jb 0x49f670
jmp 0x4712a3
mov eax, dword [esi + 4]
lea edx, [esp + 0x120]
push edx
push eax
mov dword [esp + 0x130], 1
mov byte [esp + 0x138], 0
mov byte [esp + 0x140], 0
mov byte [esp + 0x148], 0
call 0x4e1a78
mov byte [esi + 9], 0
xor ecx, ecx
jmp 0x47134d
mov edx, dword [esp + 0x60]
mov eax, dword [edx + 4]
mov ecx, dword [eax + esi*4]
movsx edx, word [ecx + 0xa]
mov eax, dword [esp + 0x10]
push edx
push 0x79
push eax
call 0x4b3874
lea ecx, [esp + 0xa0]
push ecx
call 0x4bc1e1
lea ecx, [esp + 0x88]
call fcn.0047d2f0
jmp 0x4a0793
xor eax, eax
xor ecx, ecx
jmp 0x471344
push 0xffffffffffffffff
push 0x9a
push edi
mov byte [0x494c8a], 0
call 0x4b3874
jmp 0x4713da
push edi
call fcn.0047bf80
xor ecx, ecx
jmp 0x471396
cmp dword [edi + 0xf0], ecx
je 0x4718b8
jmp 0x47187e
mov byte [edi + 0xf4], 1
mov dword [edi + 0xf0], 1
jmp 0x47189e
mov byte [0x494c94], 0
mov byte [0x494c8e], 0
mov dword [edi + 0xf0], 1
jmp 0x4718ab
mov eax, dword [0x4a5dd8]
mov ebx, dword [eax]
call fcn.004a4a0d
mov eax, dword [edi + 0x1a8]
xor esi, esi
test eax, eax
jbe 0x49f7c1
mov ecx, dword [edi + 0x1a4]
mov edx, dword [ecx]
cmp dword [edx], 0
je 0x49f7b9
mov edx, dword [edx]
cmp dword [edx], ebx
je 0x49f7c1
inc esi
add ecx, 4
cmp esi, eax
jb 0x49f7a4
xor ebx, ebx
cmp esi, eax
je 0x4718c7
lea eax, [esp + 0x160]
push eax
lea ecx, [esp + 0x168]
push ecx
lea edx, [esp + 0x158]
push edx
lea eax, [esp + 0x3c]
push eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 0x1a4]
mov edx, dword [ecx + esi*4]
mov ecx, dword [edx]
mov edi, dword [ecx + 8]
push eax
call fcn.0047bf50
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x1a4]
mov eax, dword [edx + esi*4]
mov ecx, dword [eax]
mov ebx, dword [esp + 0x30]
add ecx, 0x18
inc ebx
push ecx
lea esi, [edi + 0x144]
mov dword [esp + 0x34], ebx
call fcn.0047c8e0
push 0
push 1
push ebx
push edi
call 0x4edee0
jmp 0x4719af
cmp byte [0x494c8b], 0
jne 0x4718d4
push 0xa
call dword [fcn.00483164]
jmp 0x4719af
cmp byte [0x4a6ce4], 0
jne 0x4718e0
mov byte [0x4a6ce4], 1
call dword [0x483780]
mov esi, dword [edi + 0x464]
mov ebx, eax
lea eax, [edi + 0x464]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x68], esi
push ecx
lea edx, [esp + 0x6c]
mov dword [esp], 0
push edx
call 0x4b147d
test al, al
je 0x49f93a
mov ecx, dword [esi]
cmp byte [ecx + 0x11], 0
jne 0x49f922
mov edx, dword [ecx + 0x14]
mov eax, ebx
sub eax, edx
cmp ebx, edx
jae 0x49f8bf
dec eax
cmp eax, dword [ecx + 0x18]
jb 0x49f922
inc dword [esp + 0x20]
mov dword [ecx + 0x14], ebx
lea eax, [esp + 0x148]
push eax
lea ecx, [esp + 0x16c]
push ecx
mov ecx, dword [esi]
mov edi, dword [ecx]
lea edx, [esp + 0x164]
push edx
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x70]
push eax
push edx
call fcn.0047bf50
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x10]
mov ecx, dword [esi]
push 0
inc eax
push 1
push eax
push edx
mov dword [esp + 0x74], eax
mov byte [ecx + 0x10], 1
call 0x4edee0
mov eax, dword [esi]
mov edi, dword [esp + 0x10]
mov byte [eax + 0x10], 0
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x6c]
push edx
call 0x4b148d
mov esi, dword [esp + 0x68]
jmp 0x49f889
mov esi, dword [esp + 0x1c]
mov eax, dword [esi]
mov dword [esp + 0x1c], eax
push ecx
lea ecx, [esp + 0x20]
mov dword [esp], 0
push ecx
call 0x4b147d
test al, al
je 0x49f98c
mov edx, dword [esp + 0x1c]
mov eax, dword [edx]
cmp byte [eax + 0x11], 0
jne 0x49f97f
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x20]
push edx
call 0x4b148d
jmp 0x49f944
lea eax, [esp + 0x1c]
push eax
push esi
call 0x4bea6e
jmp 0x49f93e
cmp dword [esp + 0x20], 0
mov byte [0x4a6ce4], 0
jg 0x4719af
xor ebx, ebx
jmp 0x4718e0
cmp byte [edi + 0x470], 1
je 0x4718ed
cmp byte [0x4a5e18], 1
je 0x4718ed
lea ecx, [esp + 0xb4]
push ecx
call 0x4bbd02
lea edx, [esp + 0xb4]
push edx
push 0x4a5de0
call 0x4be63a
test al, al
je 0x49fc02
lea eax, [esp + 0xb8]
push eax
call fcn.004a8152
test al, al
jne 0x49f9cc
mov edi, dword [esp + 0xb8]
lea ecx, [esp + 0x16c]
push ecx
lea edx, [esp + 0x158]
push edx
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x160]
push eax
lea ecx, [esp + 0x58]
push ecx
push edx
call fcn.0047bf50
test al, al
je 0x49f9cc
xor ebx, ebx
mov edi, 1
lea esi, [esp + 0x88]
mov dword [esp + 0x88], ebx
mov dword [esp + 0x90], edi
mov dword [esp + 0x94], ebx
call fcn.00472780
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x90], edi
mov edi, 0x48adbc
lea esi, [esp + 0x174]
mov dword [esp + 0x88], eax
call fcn.00473650
lea eax, [ebx + 2]
lea ecx, [ebx + 1]
lea edx, [esp + 0x88]
call fcn.0047b0d0
mov ecx, esi
call fcn.004735c0
lea esi, [esp + 0x88]
call fcn.00472780
mov ecx, dword [esp + 0xc8]
mov edi, 0x48add4
lea esi, [esp + 0x184]
mov dword [esp + 0x90], 7
mov dword [esp + 0x88], ecx
call fcn.00473650
lea eax, [ebx + 2]
lea ecx, [ebx + 1]
lea edx, [esp + 0x88]
call fcn.0047b0d0
mov ecx, esi
call fcn.004735c0
lea esi, [esp + 0x88]
call fcn.00472780
mov edx, dword [esp + 0xcc]
mov edi, 0x48adf4
lea esi, [esp + 0x194]
mov dword [esp + 0x90], 7
mov dword [esp + 0x88], edx
call fcn.00473650
lea eax, [ebx + 2]
lea ecx, [ebx + 1]
lea edx, [esp + 0x88]
call fcn.0047b0d0
mov ecx, esi
call fcn.004735c0
mov eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x10]
push ebx
push 1
inc eax
push eax
push esi
mov byte [esi + 0x470], 1
call 0x4edee0
mov byte [esi + 0x470], bl
lea esi, [esp + 0x88]
jmp 0x49fbe8
xor ebx, ebx
mov edi, 1
lea esi, [esp + 0xe8]
mov dword [esp + 0xe8], ebx
mov dword [esp + 0xf0], edi
mov dword [esp + 0xf4], ebx
call fcn.00472780
mov eax, dword [esp + 0xb4]
mov dword [esp + 0xf0], edi
mov edi, 0x48ae14
lea esi, [esp + 0x1a4]
mov dword [esp + 0xe8], eax
call fcn.00473650
lea eax, [ebx + 2]
lea ecx, [ebx + 1]
lea edx, [esp + 0xe8]
call fcn.0047b0d0
mov ecx, esi
call fcn.004735c0
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x10]
push ebx
push 1
inc ecx
push ecx
push esi
mov byte [esi + 0x471], 1
call 0x4edee0
mov byte [esi + 0x471], bl
lea esi, [esp + 0xe8]
call fcn.00472780
lea ecx, [esp + 0xb8]
call fcn.004735c0
mov edi, dword [esp + 0x10]
jmp 0x4719af
lea ecx, [esp + 0xb8]
call fcn.004735c0
mov edi, dword [esp + 0x10]
xor ebx, ebx
jmp 0x4718ed
cmp byte [edi + 0x471], 1
je 0x471908
lea ecx, [esp + 0xb4]
push ecx
call 0x4bbd02
lea edx, [esp + 0xb4]
push edx
push 0x4a5ec0
call 0x4c04a8
test al, al
je 0x49fc95
lea eax, [esp + 0xb8]
push eax
call fcn.004a8152
test al, al
jne 0x49fc33
mov edi, dword [esp + 0xb8]
lea ecx, [esp + 0x14c]
push ecx
lea edx, [esp + 0x174]
push edx
mov edx, dword [esp + 0x18]
lea eax, [esp + 0xa8]
push eax
lea ecx, [esp + 0x38]
push ecx
push edx
call fcn.0047bf50
test al, al
je 0x49fc33
jmp 0x49fb5a
lea ecx, [esp + 0xb8]
call fcn.004735c0
mov edi, dword [esp + 0x10]
xor ebx, ebx
jmp 0x471908
mov edx, dword [edi + 0x45c]
push 0xa
push edx
call dword [0x483154]
mov dword [esp + 0x9c], eax
cmp eax, 0x102
je 0x4719af
mov ecx, dword [edi + 0x45c]
lea eax, [esp + 0x9c]
push eax
push ecx
call dword [0x48324c]
mov edx, dword [edi + 0x45c]
push edx
call dword [0x4832f8]
mov eax, dword [esp + 0x9c]
mov ecx, dword [edi]
mov dword [esp + 0x68], eax
mov eax, dword [ecx + 4]
jmp 0x49fd1a
push eax
call dword [0x4832f8]
mov dword [edi + 0x460], ebx
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov dword [esp + 0x68], ebx
add eax, edi
lea ecx, [esp + 0x68]
call fcn.0047b520
mov byte [edi + 0x13c], 1
mov dword [edi + 0xf0], ebx
jmp 0x4719af
mov esi, dword [fcn.00483164]
push 0xa
call esi
cmp dword [edi + 0x454], ebx
je 0x49fd83
call dword [0x483780]
mov ecx, dword [edi + 0x458]
cmp eax, ecx
jae 0x49fd69
sub eax, ecx
dec eax
jmp 0x49fd6b
sub eax, ecx
cmp eax, dword [edi + 0x454]
jb 0x49fd83
mov eax, dword [edi + 0x460]
cmp eax, ebx
je 0x49fd11
jmp 0x49fd04
mov edx, dword [edi + 0x444]
lea eax, [esp + 0x17]
push eax
lea ecx, [esp + 0x2c]
push ecx
push edx
call str.___
add esp, 0xc
cmp dword [edi + 0xf0], 9
jne 0x49fdc8
cmp byte [esp + 0x17], 0
jne 0x49fdbe
mov byte [esp + 0x17], 1
jmp 0x49fdd3
mov byte [esp + 0x17], 0
jmp 0x4719af
cmp byte [esp + 0x17], 1
jne 0x4719af
mov eax, dword [edi + 0x460]
mov dword [esp + 0x48], 0xcccccccc
cmp eax, ebx
je 0x49fe08
lea ecx, [esp + 0x48]
push ecx
push eax
call dword [0x48324c]
mov edx, dword [edi + 0x460]
push edx
call dword [0x4832f8]
mov dword [edi + 0x460], ebx
cmp dword [edi + 0xf0], 8
jne 0x49fe46
mov eax, dword [esp + 0x28]
fild dword [esp + 0x28]
test eax, eax
jge 0x49fe2b
fadd qword [0x48d2f0]
mov edx, dword [edi]
fstp qword [esp + 0x68]
mov eax, dword [edx + 4]
lea ecx, [esp + 0x68]
push ecx
add eax, edi
push eax
call 0x4c3b41
jmp 0x49fe58
mov edx, dword [edi]
mov ecx, dword [esp + 0x48]
mov eax, dword [edx + 4]
push ebx
push ecx
add eax, edi
call fcn.00472fe0
mov eax, dword [edi + 0x2fc]
push eax
mov byte [edi + 0x13c], 1
mov dword [edi + 0xf0], ebx
call esi
jmp 0x4719af
push 0xa
call dword [fcn.00483164]
cmp dword [edi + 0x2f8], ebx
je 0x49fecc
call dword [0x483780]
mov ecx, dword [edi + 0x300]
cmp eax, ecx
jae 0x49fea3
sub eax, ecx
dec eax
jmp 0x49fea5
sub eax, ecx
cmp eax, dword [edi + 0x2f8]
jb 0x49fecc
cmp dword [edi + 0xf0], 2
je 0x49fd25
mov ecx, dword [edi]
mov eax, dword [ecx + 4]
mov dword [esp + 0x68], ebx
jmp 0x49fd1a
mov eax, dword [edi + 0xf0]
add eax, 0xfffffffd
cmp eax, 3
ja 0x4719af
jmp dword [eax*4 + 0x432be9]
mov dword [edi + 0xf0], 1
jmp 0x4719af
dec eax
cmp eax, 0x7e
ja 0x4a016b
movzx eax, byte [eax + 0x432c11]
jmp dword [eax*4 + 0x432bf9]
movsx edx, word [edx + 0xa]
push edx
push 0x1388
push edi
call 0x4b3874
jmp 0x4719af
mov ecx, dword [edi]
mov eax, dword [ecx + 4]
add eax, edi
lea ecx, [esp + 0x30]
mov dword [esp + 0x30], 0
call fcn.0047b520
jmp 0x4713bd
mov esi, edi
call fcn.0047d5c0
cmp byte [edi + 0xf4], 1
je 0x4713da
push edi
call fcn.00474b70
push 0
call dword [0x4836b0]
mov edx, dword [0x494cc0]
push edx
call dword [0x483604]
mov esi, dword [0x4836ac]
push 0
push 0
push 0
lea eax, [esp + 0x1c0]
push eax
call esi
test eax, eax
jle 0x4713da
lea ecx, [esp + 0x1b4]
push ecx
call dword [0x4836b8]
lea edx, [esp + 0x1b4]
push edx
call dword [0x4836b4]
push 0
push 0
push 0
lea eax, [esp + 0x1c0]
push eax
call esi
test eax, eax
jg 0x4a01ea
jmp 0x4713da
call fcn.0046f0b0
cmp esi, dword [edi]
jb 0x4a021f
jmp 0x4713ea
mov edx, dword [eax + 4]
mov ecx, dword [edx + 0x28]
jmp 0x471412
mov edx, dword [eax + 4]
mov esi, dword [edx + 0x28]
jmp 0x47142f
push eax
call 0x4b408c
mov dword [ebx + 0xc], 0
jmp 0x471445
mov ecx, dword [ebx]
test ecx, ecx
je 0x471451
push ecx
call dword [0x483428]
mov eax, dword [ebx]
push eax
call fcn.004803bd
add esp, 4
jmp 0x471475
mov eax, dword [ebx]
test eax, eax
je 0x471475
push eax
call 0x4b52f1
jmp 0x471475
mov eax, ebx
call fcn.0047cea0
jmp 0x471475
mov ecx, dword [ebx]
mov edx, dword [ecx + 4]
push edx
call fcn.004803bd
mov eax, dword [ebx]
add esp, 4
push eax
call fcn.004803bd
add esp, 4
jmp 0x471475
mov eax, dword [ebx]
test eax, eax
je 0x471475
push eax
call 0x4bc1a3
jmp 0x471475
dec eax
cmp eax, 0xb
ja 0x4714c1
jmp dword [eax*4 + 0x432c91]
xor eax, eax
jmp 0x4714be
mov eax, dword [eax + 0x28]
jmp 0x4714dd
mov eax, dword [ebp + 0x14]
mov esi, dword [ebp + 0x10]
mov byte [eax], 0
call fcn.00472780
mov dword [esi + 8], 1
mov dword [esi], 0
jmp 0x4714c1
mov eax, esi
call fcn.00472fd0
mov ecx, dword [eax + 0x14]
mov dword [esp + 0x134], ecx
jmp 0x4714e7
mov edx, dword [esi + 4]
mov eax, dword [edx + 0x28]
jmp 0x4714f4
mov eax, esi
call fcn.00472fd0
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x13c], eax
jmp 0x4714fe
mov eax, dword [esi + 4]
mov ebx, dword [eax + 0x28]
test eax, eax
je 0x4a04c1
push eax
call 0x4bc30d
mov dword [esi + 4], ebx
mov byte [esi + 9], 0
jmp 0x471508
mov byte [esi + 9], 1
jmp 0x4715a3
mov eax, dword [edi]
push eax
call fcn.004803bd
mov ecx, dword [edi + 0xc]
add esp, 4
push ecx
call fcn.004803bd
add esp, 4
jmp 0x47153b
mov ecx, dword [ebx]
test ecx, ecx
je 0x471557
push ecx
call dword [0x483428]
mov edx, dword [ebx]
push edx
call fcn.004803bd
add esp, 4
jmp 0x47157b
mov eax, dword [ebx]
test eax, eax
je 0x47157b
push eax
call 0x4b52f1
jmp 0x47157b
mov eax, ebx
call fcn.0047cea0
jmp 0x47157b
mov eax, dword [ebx]
mov ecx, dword [eax + 4]
push ecx
call fcn.004803bd
mov edx, dword [ebx]
add esp, 4
push edx
call fcn.004803bd
add esp, 4
jmp 0x47157b
mov eax, dword [ebx]
test eax, eax
je 0x47157b
push eax
call 0x4bc1a3
jmp 0x47157b
mov edx, dword [eax + 8]
mov ecx, dword [edx + 0x28]
jmp 0x4715b9
mov eax, dword [eax + 0x28]
jmp 0x4715d0
mov edx, dword [eax + 8]
mov ecx, dword [edx + 0x28]
jmp 0x4715e8
mov eax, dword [eax + 0x28]
jmp 0x4715ff
mov eax, dword [0x4a56e0]
mov esi, dword [eax + 8]
push eax
call 0x4d9854
mov ecx, esi
mov dword [0x4a56e0], ecx
mov byte [0x4a56e5], 0
jmp 0x471616
mov byte [0x4a56e5], 1
jmp 0x471720
mov ecx, dword [esp + 0x30]
push eax
call fcn.0046fff0
jmp 0x471653
mov ecx, dword [edi]
push ecx
call fcn.004803bd
mov edx, dword [edi + 0xc]
add esp, 4
push edx
call fcn.004803bd
add esp, 4
jmp 0x471678
mov ecx, dword [ebx]
test ecx, ecx
je 0x471694
push ecx
call dword [0x483428]
mov eax, dword [ebx]
push eax
call fcn.004803bd
add esp, 4
jmp 0x4716b8
mov eax, dword [ebx]
test eax, eax
je 0x4716b8
push eax
call 0x4b52f1
jmp 0x4716b8
mov eax, ebx
call fcn.0047cea0
jmp 0x4716b8
mov ecx, dword [ebx]
mov edx, dword [ecx + 4]
push edx
call fcn.004803bd
mov eax, dword [ebx]
add esp, 4
push eax
call fcn.004803bd
add esp, 4
jmp 0x4716b8
mov eax, dword [ebx]
test eax, eax
je 0x4716b8
push eax
call 0x4bc1a3
jmp 0x4716b8
push eax
call 0x4b408c
mov dword [esp + 0x44], 0
jmp 0x47173f
mov eax, dword [esp + 0x38]
test eax, eax
je 0x471770
push eax
call dword [0x483428]
mov ecx, dword [esp + 0x38]
push ecx
call fcn.004803bd
add esp, 4
jmp 0x471770
mov eax, dword [esp + 0x38]
test eax, eax
je 0x471770
push eax
call 0x4b52f1
jmp 0x471770
lea eax, [esp + 0x38]
call fcn.0047cea0
jmp 0x471770
mov edx, dword [esp + 0x38]
mov eax, dword [edx + 4]
push eax
call fcn.004803bd
mov ecx, dword [esp + 0x3c]
add esp, 4
push ecx
call fcn.004803bd
add esp, 4
jmp 0x471770
mov eax, dword [esp + 0x38]
test eax, eax
je 0x471770
push eax
call 0x4bc1a3
jmp 0x471770
mov edx, dword [edi]
push edx
call fcn.004803bd
mov eax, dword [edi + 0xc]
add esp, 4
push eax
call fcn.004803bd
add esp, 4
jmp 0x4717e3
mov ecx, dword [esi]
test ecx, ecx
je 0x4717ff
push ecx
call dword [0x483428]
mov ecx, dword [esi]
push ecx
call fcn.004803bd
add esp, 4
jmp 0x471823
mov eax, dword [esi]
test eax, eax
je 0x471823
push eax
call 0x4b52f1
jmp 0x471823
mov eax, esi
call fcn.0047cea0
jmp 0x471823
mov edx, dword [esi]
mov eax, dword [edx + 4]
push eax
call fcn.004803bd
mov ecx, dword [esi]
add esp, 4
push ecx
call fcn.004803bd
add esp, 4
jmp 0x471823
mov eax, dword [esi]
test eax, eax
je 0x471823
push eax
call 0x4bc1a3
jmp 0x471823
mov eax, dword [esp + 0x30]
push eax
push 0x70
mov ecx, dword [esp + 0x18]
push ecx
call 0x4b3874
lea esi, [esp + 0x38]
call fcn.00472780
lea ecx, [esp + 0x50]
call 0x4b287b
lea ecx, [esp + 0x78]
call fcn.0047fa00
mov eax, 1
jmp 0x471856