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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x5c]
cmp eax, dword [ecx + 8]
jbe 0x474b8a
sub esp, 0xdc
mov eax, 0
lea edi, [esp + 0xc8]
call fcn.0044b5cb
mov edi, esp
lea esi, [esp + 0xe0]
call fcn.0044baae
call fcn.0047a030
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x6c], edx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x50], ebx
mov ebp, dword [esp + 0x14]
mov dword [esp + 0xb8], ebp
mov esi, dword [esp + 0x100]
mov edi, dword [esp + 0x104]
mov esi, 0xffffffff
mov dword [esp + 0x30], esi
mov edi, 0xffffffff
mov dword [esp + 0x60], edi
xor edi, edi
mov dword [esp + 0x54], edi
xor esi, esi
mov dword [esp + 0x64], esi
xor esi, esi
mov dword [esp + 0x58], esi
xor esi, esi
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x100]
mov edi, dword [esp + 0x104]
jmp 0x473782
mov edx, dword [esp + 0x6c]
mov ebp, dword [esp + 0xb8]
mov edx, dword [esp + 0x34]
mov dword [esp + 0x30], edx
mov dword [esp + 0xf8], ebx
mov dword [esp + 0xfc], esi
mov dword [esp + 0xf4], ecx
mov ecx, dword [esp + 0x70]
mov ebx, dword [esp + 0x50]
mov esi, dword [esp + 0xac]
mov edx, dword [esp + 0x6c]
test edi, edi
je 0x474b2a
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.00471f70
mov eax, dword [esp + 0x10]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x38], ebx
mov ebp, dword [esp + 0x14]
mov dword [esp + 0xac], ebp
test ecx, ecx
jne 0x474a54
mov ecx, dword [esp + 0xf4]
mov edx, dword [esp + 0xf8]
mov esi, dword [esp + 0xfc]
test eax, eax
je 0x474a38
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xa4], esi
mov edi, ebx
mov ebx, dword [esp + 0x30]
test ebx, ebx
jge 0x473808
test eax, 0x100
jne 0x4749e2
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x60]
test ebx, ebx
jge 0x47381f
test eax, 0x200
jne 0x474950
mov dword [esp + 0x60], ebx
and eax, 0xffff
cmp eax, 0x108
jg 0x474430
cmp eax, 0x102
jg 0x47406e
cmp eax, 0x1f
jg 0x473e36
cmp eax, 0x15
je 0x473bf2
lea ebx, [eax - 0x16]
cmp ebx, 9
ja 0x473be7
mov ebx, dword [esp + 0x68]
test ebx, ebx
jne 0x473bdc
mov eax, ebx
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x16
jne 0x4738c8
lea ebx, [edx + 1]
cmp ebx, esi
jg 0x473883
mov byte [ecx + edx], 0x5a
jmp 0x473747
lea eax, [0x635480]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.00437ce0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0xa8]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x47387a
cmp ebx, 0x19
je 0x473873
cmp ebx, 0x17
je 0x473873
cmp ebx, 0x18
je 0x473873
cmp ebx, 0x1a
je 0x473873
mov eax, 0x88888889
mov ebp, dword [esp + 0x68]
imul ebp
add edx, ebp
mov eax, ebp
sar ebp, 0x1f
sar edx, 5
mov dword [esp + 0xa0], edx
sub edx, ebp
test edx, edx
jge 0x473b77
mov edx, dword [esp + 0xa8]
lea edi, [edx + 1]
cmp edi, esi
jg 0x473b28
mov byte [ecx + edx], 0x2d
mov edx, dword [esp + 0xa0]
sub ebp, edx
neg eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0xa0], eax
mov eax, 0x88888889
imul ebp
add edx, ebp
sar edx, 5
sar ebp, 0x1f
sub edx, ebp
mov dword [esp + 0x9c], edx
mov dword [esp + 0xc], edx
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0x10], 2
call fcn.00472d00
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x3c]
cmp ebp, 0x19
jne 0x473b06
lea esi, [edx + 1]
cmp esi, ecx
jg 0x473ac2
mov byte [ebx + edx], 0x3a
cmp ebp, 0x1d
je 0x473998
cmp ebp, 0x18
jne 0x473a81
cmp ebp, 0x17
je 0x4739c8
cmp ebp, 0x1c
je 0x4739c8
cmp ebp, 0x1f
je 0x4739c8
cmp ebp, 0x1a
je 0x4739c8
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
mov edx, ecx
mov ecx, ebx
mov ebx, esi
mov esi, edx
jmp 0x473747
cmp ebp, 0x1f
jne 0x473a71
lea edx, [esi + 1]
cmp edx, ecx
jg 0x473a31
mov byte [ebx + esi], 0x3a
mov eax, dword [esp + 0xa0]
mov ebp, 0x88888889
mov esi, edx
imul ebp
mov edi, dword [esp + 0xa0]
add edx, edi
mov eax, edi
sar edi, 0x1f
sar edx, 5
sub edx, edi
imul edx, edx, 0x3c
sub eax, edx
mov dword [esp + 0xc], eax
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0x10], 2
call fcn.00472d00
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
jmp 0x4739ac
mov dword [esp + 0x98], esi
lea eax, [0x635480]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.00437ce0
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea edx, [eax + 1]
mov esi, dword [esp + 0x98]
jmp 0x4739d8
cmp ebp, 0x1a
je 0x4739d1
mov edx, esi
jmp 0x4739dc
mov eax, dword [esp + 0x9c]
imul eax, eax, 0x3c
mov edx, dword [esp + 0x28]
sub edx, eax
mov dword [esp + 0xc], edx
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0x10], 2
call fcn.00472d00
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x3c]
jmp 0x473998
mov dword [esp + 0x94], edx
lea eax, [0x635480]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], esi
call fcn.00437ce0
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea esi, [eax + 1]
mov edx, dword [esp + 0x94]
mov ebp, dword [esp + 0x3c]
jmp 0x473986
cmp ebp, 0x1e
je 0x47397b
cmp ebp, 0x1a
je 0x47397b
cmp ebp, 0x1f
je 0x47397b
mov esi, edx
jmp 0x47398a
mov dword [esp + 0x9c], ebp
lea eax, [0x635480]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edi
call fcn.00437ce0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edi, [eax + 1]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x9c]
jmp 0x473914
mov ebp, dword [esp + 0xa8]
lea edi, [ebp + 1]
cmp edi, esi
jg 0x473b90
mov byte [ecx + ebp], 0x2b
mov ebp, edx
jmp 0x473923
mov dword [esp + 0x90], edx
lea eax, [0x635480]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edi
call fcn.00437ce0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edi, [eax + 1]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0xa8]
jmp 0x473b85
mov eax, ebx
mov ebx, dword [esp + 0x3c]
jmp 0x4738dc
mov eax, dword [esp + 0x68]
mov ebx, edx
jmp 0x473747
mov ebx, dword [esp + 0x50]
test ebx, ebx
je 0x473cad
lea eax, [ebx + edx]
mov dword [esp + 0xf8], eax
cmp eax, esi
ja 0x473c65
cmp eax, esi
ja 0x474b44
mov dword [esp + 0xfc], esi
mov dword [esp + 0xf4], ecx
lea eax, [ecx + edx]
mov dword [esp], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.0044bcd0
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
mov ecx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf8]
mov esi, dword [esp + 0xfc]
jmp 0x473747
lea ebx, [0x635480]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], eax
call fcn.00437ce0
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0xf8]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473c0c
mov eax, 0x88888889
mov ebx, dword [esp + 0x68]
imul ebx
add edx, ebx
mov eax, ebx
sar ebx, 0x1f
sar edx, 5
mov dword [esp + 0xa0], edx
sub edx, ebx
test edx, edx
jge 0x473dd1
mov edx, dword [esp + 0xa8]
lea ebp, [edx + 1]
cmp ebp, esi
jg 0x473d82
mov byte [ecx + edx], 0x2d
mov edx, dword [esp + 0xa0]
sub ebx, edx
mov dword [esp + 0x2c], ebx
mov eax, 0x88888889
imul ebx
add edx, ebx
sar ebx, 0x1f
sar edx, 5
sub edx, ebx
mov dword [esp + 0xa0], edx
mov dword [esp + 0xc], edx
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0x10], 2
call fcn.00472d00
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0xa0]
imul ebp, ebp, 0x3c
mov esi, dword [esp + 0x2c]
sub esi, ebp
mov dword [esp + 0xc], esi
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0x10], 2
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov dword [esp + 0x9c], ebx
lea eax, [0x635480]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00437ce0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x9c]
mov edi, dword [esp + 0x38]
jmp 0x473ce5
mov ebx, dword [esp + 0xa8]
lea ebp, [ebx + 1]
cmp ebp, esi
jg 0x473dea
mov byte [ecx + ebx], 0x2b
mov ebx, edx
jmp 0x473cf2
mov dword [esp + 0x8c], edx
lea eax, [0x635480]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00437ce0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0xa8]
mov edi, dword [esp + 0x38]
jmp 0x473ddf
lea ebx, [eax - 0x20]
cmp ebx, 1
jbe 0x473ffc
cmp eax, 0x101
je 0x473f1e
cmp eax, 0x102
jne 0x473be7
mov eax, dword [esp + 0x54]
mov dword [esp], eax
call fcn.00479cb0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
cmp eax, 3
jb 0x474b7c
mov eax, dword [esp + 0xa8]
lea edx, [eax + 3]
mov ebx, dword [esp + 0xa4]
cmp edx, ebx
ja 0x473ec9
mov ebp, dword [esp + 0xc4]
cmp edx, ebx
ja 0x474b7c
mov esi, edx
movzx edx, word [ecx]
mov edi, edx
movzx edx, byte [ecx + 2]
mov word [ebp + eax], di
mov byte [ebp + eax + 2], dl
mov eax, dword [esp + 0x68]
mov edi, dword [esp + 0x38]
mov ecx, ebp
mov ebp, dword [esp + 0xac]
mov edx, ebx
mov ebx, esi
mov esi, edx
jmp 0x473747
mov dword [esp + 0x88], edx
mov dword [esp + 0xc0], ecx
lea ecx, [0x635480]
mov dword [esp], ecx
mov ebp, dword [esp + 0xc4]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00437ce0
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0x88]
jmp 0x473e91
mov eax, dword [esp + 0x54]
mov dword [esp], eax
call fcn.00479cb0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xa8]
lea ebx, [edx + eax]
mov dword [esp + 0xf8], ebx
mov ebp, dword [esp + 0xa4]
cmp ebx, ebp
ja 0x473fa6
mov esi, dword [esp + 0xc4]
cmp ebx, ebp
ja 0x474b75
mov dword [esp + 0xfc], ebp
mov dword [esp + 0xf4], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044bcd0
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
mov ecx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf8]
mov esi, dword [esp + 0xfc]
jmp 0x473747
mov dword [esp + 0x5c], eax
mov dword [esp + 0xbc], ecx
lea eax, [0x635480]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00437ce0
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0xf8]
jmp 0x473f55
lea edi, [esp + 0xc8]
mov ebx, esi
lea esi, [esp + 0xe0]
call fcn.0044baae
mov ecx, dword [esp + 0xc8]
mov ebp, dword [esp + 0xc4]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
and ecx, 0x3fffffff
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x3c]
sar ecx, 0x10
mov dword [esp + 0x10], ecx
cmp eax, 0x21
sete al
mov byte [esp + 0x14], al
call fcn.00473020
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
cmp eax, 0x105
jg 0x474230
cmp eax, 0x103
je 0x4741f0
cmp eax, 0x104
jne 0x4740cb
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 2
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov eax, dword [esp + 0x6c]
add eax, 0x15180
mov dword [esp], eax
mov eax, dword [esp + 0x70]
adc eax, 0
mov dword [esp + 4], eax
mov dword [esp + 8], 0x93a80
mov dword [esp + 0xc], 0
call fcn.00447080
mov eax, dword [esp + 0x10]
mov dword [esp + 0x40], eax
mov ecx, 0xc22e4507
imul ecx
mov eax, dword [esp + 0x40]
mov ebx, eax
sar eax, 0x1f
add edx, ebx
sar edx, 0x10
sub edx, eax
mov dword [esp], edx
call fcn.00479db0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xa8]
lea ebx, [eax + edx]
mov dword [esp + 0xf8], ebx
mov ebp, dword [esp + 0xa4]
cmp ebx, ebp
ja 0x47419a
mov esi, dword [esp + 0xc4]
cmp ebx, ebp
ja 0x474b67
mov dword [esp + 0xfc], ebp
mov dword [esp + 0xf4], esi
add edx, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044bcd0
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
mov ecx, dword [esp + 0xf4]
mov ebx, dword [esp + 0xf8]
mov esi, dword [esp + 0xfc]
jmp 0x473747
mov dword [esp + 0x48], eax
mov dword [esp + 0xb0], ecx
lea eax, [0x635480]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00437ce0
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0xf8]
jmp 0x474149
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
cmp eax, 0x106
je 0x474329
cmp eax, 0x107
je 0x4742e9
mov eax, dword [esp + 0x64]
cmp eax, 0xa
jge 0x4742e2
lea ebx, [edx + 1]
cmp ebx, esi
jg 0x47429a
mov byte [ecx + edx], 0x20
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
lea eax, [0x635480]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.00437ce0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0xa8]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x47425a
mov ebx, edx
jmp 0x47425e
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov eax, dword [esp + 0x6c]
add eax, 0x15180
mov dword [esp], eax
mov eax, dword [esp + 0x70]
adc eax, 0
mov dword [esp + 4], eax
mov dword [esp + 8], 0x93a80
mov dword [esp + 0xc], 0
call fcn.00447080
mov eax, dword [esp + 0x10]
mov ecx, eax
mov eax, 0xc22e4507
imul ecx
mov eax, ecx
sar ecx, 0x1f
add eax, edx
sar eax, 0x10
sub eax, ecx
mov dword [esp], eax
call fcn.00479db0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
cmp eax, 3
jb 0x474b6e
mov eax, dword [esp + 0xa8]
lea edx, [eax + 3]
mov ebx, dword [esp + 0xa4]
cmp edx, ebx
ja 0x4743db
mov ebp, dword [esp + 0xc4]
cmp edx, ebx
ja 0x474b6e
mov esi, edx
movzx edx, word [ecx]
mov edi, edx
movzx edx, byte [ecx + 2]
mov word [ebp + eax], di
mov byte [ebp + eax + 2], dl
mov eax, dword [esp + 0x68]
mov edi, dword [esp + 0x38]
mov ecx, ebp
mov ebp, dword [esp + 0xac]
mov edx, ebx
mov ebx, esi
mov esi, edx
jmp 0x473747
mov dword [esp + 0x84], edx
mov dword [esp + 0xc0], ecx
lea ecx, [0x635480]
mov dword [esp], ecx
mov ebp, dword [esp + 0xc4]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00437ce0
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0x84]
jmp 0x4743a3
cmp eax, 0x20c
jg 0x474668
cmp eax, 0x112
jg 0x474541
cmp eax, 0x109
je 0x474501
cmp eax, 0x111
je 0x4744c1
cmp eax, 0x112
jne 0x473be7
mov ebx, dword [esp + 0x34]
test ebx, ebx
jge 0x47446d
neg ebx
mov eax, 0x51eb851f
mov ebp, edx
imul ebx
mov edi, ebx
sar ebx, 0x1f
sar edx, 5
sub edx, ebx
imul edx, edx, 0x64
sub edi, edx
mov dword [esp + 0xc], edi
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0x10], 2
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 4
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 2
call fcn.00472d00
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
cmp eax, 0x20a
je 0x47462c
cmp eax, 0x20b
je 0x4745c5
cmp eax, 0x20c
jne 0x473be7
mov eax, 0xaaaaaaab
imul ebx
add edx, ebx
sar edx, 3
mov eax, ebx
sar ebx, 0x1f
sub edx, ebx
lea edx, [edx + edx*2]
shl edx, 2
sub eax, edx
test eax, eax
jne 0x474582
mov eax, 0xc
mov dword [esp], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 2
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov eax, 0xaaaaaaab
imul ebx
add edx, ebx
mov eax, ebx
sar ebx, 0x1f
sar edx, 3
sub edx, ebx
lea edx, [edx + edx*2]
shl edx, 2
sub eax, edx
test eax, eax
jne 0x4745e9
mov eax, 0xc
mov dword [esp], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], 2
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
cmp eax, 0x20f
jle 0x47487e
cmp eax, 0x210
je 0x47483e
cmp eax, 0x213
jne 0x474761
cmp ebx, 0xc
jl 0x4746ff
lea eax, [edx + 2]
cmp eax, esi
ja 0x4746b3
cmp eax, esi
ja 0x474b60
movzx ebx, word [0x67ba43]
mov word [ecx + edx], bx
mov ebx, eax
mov eax, dword [esp + 0x68]
jmp 0x473747
mov dword [esp + 0x80], eax
lea ebx, [0x635480]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], eax
call fcn.00437ce0
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x474695
lea eax, [edx + 2]
cmp eax, esi
ja 0x47471b
cmp eax, esi
ja 0x474b59
movzx ebx, word [0x67ba17]
mov word [ecx + edx], bx
jmp 0x4746a8
mov dword [esp + 0x7c], eax
lea ebx, [0x635480]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], eax
call fcn.00437ce0
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x474706
cmp eax, 0x214
jne 0x473be7
cmp ebx, 0xc
jl 0x4747dc
lea eax, [edx + 2]
cmp eax, esi
ja 0x474796
cmp eax, esi
ja 0x474b52
movzx ebx, word [0x67bad5]
mov word [ecx + edx], bx
mov ebx, eax
mov eax, dword [esp + 0x68]
jmp 0x473747
mov dword [esp + 0x78], eax
lea ebx, [0x635480]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], eax
call fcn.00437ce0
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x474778
lea eax, [edx + 2]
cmp eax, esi
ja 0x4747f8
cmp eax, esi
ja 0x474b4b
movzx ebx, word [0x67bab3]
mov word [ecx + edx], bx
jmp 0x47478b
mov dword [esp + 0x74], eax
lea ebx, [0x635480]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], eax
call fcn.00437ce0
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x4747e3
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x44]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 2
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
cmp eax, 0x20d
je 0x474910
cmp eax, 0x20e
jne 0x4748d0
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x58]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 2
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x44]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call fcn.00472d00
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x58]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call fcn.00472d00
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x68]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x38]
jmp 0x473747
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x15180
mov dword [esp + 0xc], 0
call fcn.00447080
mov eax, dword [esp + 0x10]
mov ecx, eax
mov eax, 0x91a2b3c5
imul ecx
lea ebx, [edx + ecx]
mov eax, ecx
sar ecx, 0x1f
sar ebx, 0xb
sub ebx, ecx
imul ecx, ebx, 0xe10
sub eax, ecx
mov ecx, eax
mov eax, 0x88888889
imul ecx
lea eax, [ecx + edx]
mov edx, ecx
sar ecx, 0x1f
sar eax, 5
sub eax, ecx
imul ecx, eax, 0x3c
sub edx, ecx
mov ecx, dword [esp + 0xc4]
mov ebp, dword [esp + 0xac]
mov esi, dword [esp + 0xa4]
mov edi, dword [esp + 0x38]
mov dword [esp + 0x58], eax
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0xa8]
jmp 0x47381f
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov byte [esp + 8], 1
call fcn.0047b550
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xa8]
mov ebp, dword [esp + 0xac]
mov esi, dword [esp + 0xa4]
mov edi, dword [esp + 0x38]
mov dword [esp + 0x54], eax
mov dword [esp + 0x64], ecx
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0xc4]
jmp 0x473808
mov dword [esp + 0x108], ecx
mov dword [esp + 0x10c], edx
mov dword [esp + 0x110], esi
add esp, 0xdc
ret
mov esi, dword [esp + 0xf8]
lea edi, [ecx + esi]
mov dword [esp + 0xa0], edi
mov ebx, dword [esp + 0xfc]
cmp edi, ebx
ja 0x474ac2
cmp edi, ebx
ja 0x474b83
mov dword [esp + 0xfc], ebx
mov eax, dword [esp + 0xf4]
lea ebx, [eax + esi]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0044bcd0
mov eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xac]
mov ecx, dword [esp + 0xf4]
mov edx, dword [esp + 0xa0]
mov esi, dword [esp + 0xfc]
jmp 0x4737d6
mov dword [esp + 0x4c], ecx
mov dword [esp + 0xb4], edx
lea eax, [0x635480]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edi
call fcn.00437ce0
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0xb4]
mov ebp, dword [esp + 0xac]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xa0]
mov dword [esp + 0xf4], eax
mov eax, dword [esp + 0x3c]
jmp 0x474a70
mov ecx, dword [esp + 0xf4]
mov edx, dword [esp + 0xf8]
mov esi, dword [esp + 0xfc]
jmp 0x474a38
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.00449d70
jmp fcn.00473690