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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x47607f
sub esp, 0x84
mov eax, dword [esp + 0x90]
test eax, eax
je 0x475f20
mov ecx, dword [esp + 0x9c]
test ecx, ecx
jne 0x474f77
test eax, eax
setne al
test ecx, ecx
setne cl
cmp al, cl
sete al
mov byte [esp + 0xa8], al
add esp, 0x84
ret
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0047fa40
mov eax, dword [esp + 0xc]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x94]
mov dword [esp], edx
mov ebx, dword [esp + 0x98]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x9c]
mov dword [esp + 8], ebp
call fcn.0047fa40
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x48]
cmp dword [esp + 0xc], ecx
je 0x474fe7
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
mov dword [esp], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00403830
movzx eax, byte [esp + 0xc]
test al, al
je 0x474fd8
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov ecx, dword [esp + 0x8c]
mov dword [esp + 4], ecx
mov ebx, dword [esp + 0x90]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0x94]
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0x98]
mov dword [esp + 0x10], esi
mov edi, dword [esp + 0x9c]
mov dword [esp + 0x14], edi
mov esi, dword [0x6896f4]
lea edx, [0x6896f4]
call esi
movzx eax, byte [esp + 0x18]
test al, al
jne 0x475d59
nop
mov eax, dword [esp + 0x90]
mov ecx, eax
and eax, 0x1f
cmp eax, 0x14
ja 0x475507
cmp eax, 0x11
jne 0x4751a7
xor eax, eax
jmp 0x475091
mov edx, dword [esp + 0x2c]
lea eax, [edx + 1]
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x88]
mov dword [esp], edx
mov ebx, dword [esp + 0x8c]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.0047e320
mov eax, dword [esp + 0x2c]
cmp dword [esp + 0xc], eax
jle 0x475198
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x90]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.0047dfe0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebp, dword [esp + 0x98]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x9c]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x2c]
mov dword [esp + 0xc], edi
call fcn.0047dfe0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0xa4]
lea edx, [ecx + 1]
mov dword [esp + 0x1c], edx
call fcn.00474f20
movzx eax, byte [esp + 0x20]
test al, al
jne 0x475083
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
cmp eax, 0x13
jne 0x47527f
test ecx, 0x200
je 0x4751c7
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
test ecx, 0x80
je 0x475273
mov eax, dword [esp + 0x8c]
mov eax, dword [eax]
test eax, eax
setne al
xor eax, 1
test al, al
je 0x4751b8
nop
mov eax, dword [esp + 0x9c]
mov ecx, eax
and eax, 0x1f
mov dword [esp + 0x44], eax
cmp eax, 0x14
ja 0x47525f
lea edx, [eax - 0x12]
cmp edx, 1
ja 0x475243
test ecx, 0x200
jne 0x4751b8
test ecx, 0x80
je 0x47523a
mov eax, dword [esp + 0x98]
mov eax, dword [eax]
test eax, eax
setne al
xor eax, 1
test al, al
je 0x4751b8
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
mov eax, dword [esp + 0x98]
jmp 0x47521f
cmp eax, 0x14
jne 0x475f2c
mov ecx, dword [esp + 0x98]
mov ecx, dword [ecx]
test ecx, ecx
setne al
xor eax, 1
jmp 0x475227
cmp eax, 0x16
jbe 0x475206
cmp eax, 0x17
je 0x47524c
cmp eax, 0x1a
je 0x475206
jmp 0x475f2c
mov eax, dword [esp + 0x8c]
jmp 0x4751dc
cmp eax, 0x14
jne 0x475471
mov eax, dword [esp + 0x8c]
mov edx, dword [eax]
test edx, edx
setne dl
xor edx, 1
test dl, dl
je 0x475332
test byte [eax], al
nop
mov eax, dword [esp + 0x9c]
mov ecx, eax
and eax, 0x1f
mov dword [esp + 0x44], eax
cmp eax, 0x14
ja 0x47531e
lea ebx, [eax - 0x12]
cmp ebx, 1
ja 0x475302
test ecx, 0x200
je 0x4752de
xor eax, eax
cmp dl, al
sete al
mov byte [esp + 0xa8], al
add esp, 0x84
ret
test ecx, 0x80
je 0x4752f9
mov eax, dword [esp + 0x98]
mov eax, dword [eax]
test eax, eax
setne al
xor eax, 1
jmp 0x4752cb
mov eax, dword [esp + 0x98]
jmp 0x4752ef
cmp eax, 0x14
jne 0x475fa0
mov ecx, dword [esp + 0x98]
mov ecx, dword [ecx]
test ecx, ecx
setne al
xor eax, 1
jmp 0x4752cb
cmp eax, 0x16
jbe 0x4752c1
cmp eax, 0x17
je 0x47530b
cmp eax, 0x1a
je 0x4752c1
jmp 0x475fa0
nop
mov ebx, dword [esp + 0x9c]
mov ebp, ebx
and ebx, 0x1f
mov dword [esp + 0x44], ebx
cmp ebx, 0x14
ja 0x475455
lea esi, [ebx - 0x12]
cmp esi, 1
ja 0x475435
test ebp, 0x200
je 0x4753fe
mov edx, dword [esp + 0x88]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0047dd80
mov eax, dword [esp + 0xc]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebx, dword [esp + 0x98]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.0047dd80
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xa4]
inc eax
mov dword [esp + 0x1c], eax
call fcn.00474f20
movzx eax, byte [esp + 0x20]
mov byte [esp + 0xa8], al
add esp, 0x84
ret
test ebp, 0x80
je 0x47542a
mov ebx, dword [esp + 0x98]
mov esi, dword [ebx]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
xchg esi, eax
test al, al
xchg esi, eax
jne 0x4752a1
jmp 0x475364
mov ebx, dword [esp + 0x98]
mov esi, ebx
jmp 0x47540f
cmp ebx, 0x14
jne 0x475fda
mov ebx, dword [esp + 0x98]
mov edi, dword [ebx]
test edi, edi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
jmp 0x47541b
cmp ebx, 0x16
jbe 0x475358
cmp ebx, 0x17
je 0x47543e
cmp ebx, 0x1a
je 0x475358
jmp 0x475fda
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov byte [esp + 0xc], 0
call fcn.0047e190
mov eax, dword [esp + 0x10]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x94]
mov dword [esp], edx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
mov byte [esp + 0xc], 0
call fcn.0047e190
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x48]
cmp dword [esp + 0x10], ecx
je 0x4754ec
xor eax, eax
mov byte [esp + 0xa8], al
add esp, 0x84
ret
mov dword [esp], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00403750
movzx eax, byte [esp + 0xc]
jmp 0x4754de
cmp eax, 0x16
jbe 0x475907
cmp eax, 0x17
je 0x475649
cmp eax, 0x19
jne 0x475471
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0047edd0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x28], eax
xor ecx, ecx
jmp 0x475557
mov edx, dword [esp + 0x34]
lea ecx, [edx + 1]
mov eax, dword [esp + 0x28]
cmp eax, ecx
jle 0x47563a
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x90]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.0047dee0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebp, dword [esp + 0x98]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x9c]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x34]
mov dword [esp + 0xc], edi
call fcn.0047dee0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0xa4]
lea edx, [ecx + 1]
mov dword [esp + 0x1c], edx
call fcn.00474f20
movzx eax, byte [esp + 0x20]
test al, al
jne 0x47554c
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
mov eax, dword [esp + 0x8c]
mov edx, dword [eax]
nop
mov ebx, dword [esp + 0x9c]
mov ebp, ebx
and ebx, 0x1f
mov dword [esp + 0x44], ebx
cmp ebx, 0x14
ja 0x4758eb
lea esi, [ebx - 0x12]
cmp esi, 1
ja 0x4758cc
test ebp, 0x200
je 0x47589d
xor ebx, ebx
test edx, edx
setne dl
xor edx, 1
cmp dl, bl
jne 0x47588e
mov edx, dword [esp + 0x88]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0047e320
mov eax, dword [esp + 0xc]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.0047e320
mov eax, dword [esp + 0x40]
cmp dword [esp + 0xc], eax
jne 0x47587f
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov ecx, dword [esp + 0x8c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x90]
mov dword [esp + 8], edx
call fcn.0047ee80
mov eax, dword [esp + 0xc]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.0047ee80
mov eax, dword [esp + 0x48]
cmp dword [esp + 0xc], eax
je 0x475870
xor eax, eax
jmp 0x475753
mov ecx, dword [esp + 0x30]
lea eax, [ecx + 1]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x90]
mov dword [esp + 8], ebx
call fcn.0047e320
mov eax, dword [esp + 0x30]
cmp dword [esp + 0xc], eax
jle 0x475861
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x90]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.0047dfe0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebp, dword [esp + 0x98]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x9c]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x30]
mov dword [esp + 0xc], edi
call fcn.0047dfe0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0xa4]
lea edx, [ecx + 1]
mov dword [esp + 0x1c], edx
call fcn.00474f20
movzx eax, byte [esp + 0x20]
test al, al
jne 0x47574c
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
test ebp, 0x80
je 0x4758c1
mov ebx, dword [esp + 0x98]
mov esi, dword [ebx]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
mov ebx, esi
jmp 0x475686
mov ebx, dword [esp + 0x98]
mov esi, ebx
jmp 0x4758ae
cmp ebx, 0x14
jne 0x476014
mov esi, dword [esp + 0x98]
mov edi, dword [esi]
test edi, edi
setne bl
xor ebx, 1
jmp 0x475686
cmp ebx, 0x16
jbe 0x475678
cmp ebx, 0x17
je 0x4758d5
cmp ebx, 0x1a
je 0x475678
jmp 0x476014
cmp eax, 0x15
jne 0x475c4d
test ecx, 0x200
je 0x475c22
xor eax, eax
nop
mov edx, dword [esp + 0x9c]
mov ebx, edx
and edx, 0x1f
mov dword [esp + 0x44], edx
cmp edx, 0x14
ja 0x475c06
lea ebp, [edx - 0x12]
cmp ebp, 1
ja 0x475be6
test ebx, 0x200
je 0x475bb7
xor edx, edx
cmp dl, al
jne 0x475ba8
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0047e320
mov eax, dword [esp + 0xc]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.0047e320
mov eax, dword [esp + 0x40]
cmp dword [esp + 0xc], eax
jne 0x475b99
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov ecx, dword [esp + 0x8c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x90]
mov dword [esp + 8], edx
call fcn.0047ee80
mov eax, dword [esp + 0xc]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.0047ee80
mov eax, dword [esp + 0x48]
cmp dword [esp + 0xc], eax
je 0x475b8a
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov ecx, dword [esp + 0x8c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x90]
mov dword [esp + 8], edx
call fcn.0047e680
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
test eax, eax
jle 0x475b6c
mov dword [esp + 0x40], eax
xor edx, edx
jmp 0x475a5b
mov ebx, dword [esp + 0x64]
add ebx, 0xc
mov ecx, ebx
mov edx, eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0x3c], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0x68], eax
mov ebx, dword [ecx + 8]
mov dword [esp + 0x44], ebx
mov ebp, dword [ecx]
mov dword [esp + 0x6c], ebp
mov esi, dword [esp + 0x88]
mov dword [esp], esi
mov edi, dword [esp + 0x8c]
mov dword [esp + 4], edi
mov edi, dword [esp + 0x90]
mov dword [esp + 8], edi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ebx
call fcn.0047e490
mov eax, dword [esp + 0x20]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x60], ecx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x5c], edx
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebp, dword [esp + 0x98]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x9c]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x6c]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x68]
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x44]
mov dword [esp + 0x14], edi
call fcn.0047e490
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x38]
test ebx, ebx
je 0x475b7b
test eax, eax
je 0x475b7b
mov ebp, dword [esp + 0x60]
mov dword [esp], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0xa4]
lea edx, [ecx + 1]
mov dword [esp + 0x1c], edx
call fcn.00474f20
movzx eax, byte [esp + 0x20]
test al, al
je 0x475b7b
mov eax, dword [esp + 0x3c]
inc eax
mov ecx, dword [esp + 0x40]
cmp ecx, eax
jg 0x475a50
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
mov byte [esp + 0xa8], 0
add esp, 0x84
ret
test ebx, 0x80
je 0x475bdb
mov edx, dword [esp + 0x98]
mov ebp, dword [edx]
test ebp, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
xor ebp, 1
mov edx, ebp
jmp 0x475952
mov edx, dword [esp + 0x98]
mov ebp, edx
jmp 0x475bc8
cmp edx, 0x14
jne 0x475f66
mov ebp, dword [esp + 0x98]
mov esi, dword [ebp]
test esi, esi
setne dl
xor edx, 1
jmp 0x475952
cmp edx, 0x16
jbe 0x475944
cmp edx, 0x17
je 0x475bef
cmp edx, 0x1a
je 0x475944
jmp 0x475f66
test ecx, 0x80
je 0x475c42
mov eax, dword [esp + 0x8c]
mov edx, dword [eax]
test edx, edx
setne dl
xor edx, 1
mov eax, edx
jmp 0x47591e
mov eax, dword [esp + 0x8c]
mov edx, eax
jmp 0x475c33
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0047ee80
mov eax, dword [esp + 0xc]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.0047ee80
mov eax, dword [esp + 0x48]
cmp dword [esp + 0xc], eax
jne 0x475cb1
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 8], eax
call fcn.0047dd80
mov eax, dword [esp + 0xc]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x44], edx
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebx, dword [esp + 0x98]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
call fcn.0047dd80
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xa4]
inc eax
mov dword [esp + 0x1c], eax
call fcn.00474f20
movzx eax, byte [esp + 0x20]
mov byte [esp + 0xa8], al
add esp, 0x84
ret
nop
mov eax, dword [esp + 0x90]
mov ecx, eax
and eax, 0x1f
add eax, 0xffffffeb
nop
cmp eax, 1
ja 0x475f0b
mov eax, dword [esp + 0x88]
cmp dword [eax], 4
jne 0x476066
mov edx, dword [eax + 4]
test edx, edx
je 0x476066
test ecx, 0x80
je 0x475efd
mov edx, dword [esp + 0x8c]
mov ebx, dword [edx]
nop
mov ebp, dword [esp + 0x9c]
mov esi, ebp
and ebp, 0x1f
add ebp, 0xffffffeb
nop
cmp ebp, 1
ja 0x475eef
mov ebp, dword [esp + 0x94]
cmp dword [ebp], 4
jne 0x47604e
mov edi, dword [ebp + 4]
test edi, edi
je 0x47604e
test esi, 0x80
je 0x475ee1
mov edi, dword [esp + 0x98]
mov ebp, dword [edi]
mov dword [esp + 0x58], ebx
mov dword [esp + 0x68], ebp
cmp ebx, ebp
jbe 0x475ed4
mov ebx, dword [esp + 0x68]
mov ebp, dword [esp + 0x58]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x50], ebp
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0047fa40
mov eax, dword [esp + 0xc]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x74], edx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], ecx
lea ebp, [0x635700]
mov dword [esp], ebp
mov esi, dword [esp + 0xa0]
mov dword [esp + 4], esi
lea edi, [esp + 0x74]
mov dword [esp + 8], edi
call fcn.0040c390
mov eax, dword [esp + 0xc]
movzx eax, byte [eax]
test al, al
jne 0x475ec5
mov eax, dword [esp + 0x54]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x80], eax
lea eax, [0x635700]
mov dword [esp], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
lea ecx, [esp + 0x74]
mov dword [esp + 8], ecx
call fcn.0040c960
mov eax, dword [esp + 0xc]
mov byte [eax], 1
jmp 0x475060
mov byte [esp + 0xa8], 1
add esp, 0x84
ret
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x68]
jmp 0x475e06
mov edi, dword [esp + 0x98]
mov ebp, edi
jmp 0x475dee
mov edi, dword [esp + 0x98]
mov ebp, edi
jmp 0x475dee
mov edx, dword [esp + 0x8c]
mov ebx, edx
jmp 0x475da3
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x8c]
mov ebx, edx
jmp 0x475da3
mov ecx, dword [esp + 0x9c]
jmp 0x474f5c
lea eax, [0x645c80]
mov dword [esp], eax
call fcn.0040b4f0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x6749e1]
mov dword [eax], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 8], ecx
lea ecx, [0x63a580]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00430630
lea eax, [0x645c80]
mov dword [esp], eax
call fcn.0040b4f0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x6749e1]
mov dword [eax], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 8], ecx
lea ecx, [0x63a580]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00430630
lea eax, [0x645c80]
mov dword [esp], eax
call fcn.0040b4f0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x6749e1]
mov dword [eax], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 8], ecx
lea ecx, [0x63a580]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00430630
lea eax, [0x645c80]
mov dword [esp], eax
call fcn.0040b4f0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x6749e1]
mov dword [eax], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 8], ecx
lea ecx, [0x63a580]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00430630
lea eax, [0x645c80]
mov dword [esp], eax
call fcn.0040b4f0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x6749e1]
mov dword [eax], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 8], ecx
lea ecx, [0x63a580]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00430630
lea eax, [0x633ac0]
mov dword [esp], eax
lea eax, [0x6c5308]
mov dword [esp + 4], eax
call fcn.00430630
lea eax, [0x633ac0]
mov dword [esp], eax
lea eax, [0x6c5300]
mov dword [esp + 4], eax
call fcn.00430630
nop
call fcn.00459790
jmp fcn.00474f20