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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x3ec
mov esi, dword [esp + 0x400]
mov word [esi + 0x8392], 1
mov ecx, esi
xor edx, edx
push 0
push 0xf
push 0x120
call fcn.00408a70
add esp, 0xc
mov ecx, esi
mov edx, 1
push 0
push 0xf
push 0x20
call fcn.00408a70
add esp, 0xc
lea eax, [esi + 0x8f12]
mov dword [esp + 0x68], eax
lea eax, [esi + 0x9032]
mov dword [esp + 0xec], eax
lea eax, [esi + 0x8612]
mov dword [esp + 0x28], eax
mov dword [esp + 0x38], 0x11e
mov eax, 0x640b42b5
jmp 0x407230
mov eax, dword [esp + 0x34]
add eax, 0xfffffeff
mov ecx, dword [esp + 0x11c]
shl eax, cl
or dword [esi + 0x48], eax
add dword [esi + 0x44], 5
mov eax, 0x2cadce36
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp eax, 0xf84ee055
jg 0x4072a0
cmp eax, 0xc0f9f650
jg 0x4073a0
cmp eax, 0xa460d5ab
jg 0x4073f4
cmp eax, 0x94aab77f
jle 0x4076c1
cmp eax, 0x9c67769f
jg 0x40782a
cmp eax, 0x96e1e07e
jg 0x407f97
cmp eax, 0x94aab780
je 0x408605
cmp eax, 0x96678144
jne 0x407230
mov eax, 0xb0902030
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x5c], ecx
jmp 0x407230
cmp eax, 0x44c7370d
jg 0x407310
cmp eax, 0xf5f950b
jle 0x407458
cmp eax, 0x26edfbbc
jle 0x40761c
cmp eax, 0x3cf3e084
jg 0x4077bd
cmp eax, 0x2cadce35
jg 0x407e90
cmp eax, 0x26edfbbd
je 0x408435
cmp eax, 0x2b1c22be
jne 0x407230
mov dword [esp + 0x14], 0
mov eax, 0x4aec7d8c
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x20], ecx
jmp 0x407230
cmp eax, 0x5ae20b7a
jle 0x4074a9
cmp eax, 0x65f504fe
jle 0x40767c
cmp eax, 0x733a9d3d
jg 0x4077f7
cmp eax, 0x6ce6b1dd
jg 0x407ed0
cmp eax, 0x65f504ff
je 0x40845c
cmp eax, 0x67f927f7
jne 0x407230
mov eax, 0x2e444b18
mov ecx, dword [esp + 0x48]
cmp ecx, dword [esp + 0x160]
jb 0x407369
mov eax, 0xfe8b0063
movzx ecx, byte [esp + 0x13]
mov byte [esp + 2], cl
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x74]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0xd8], ecx
jmp 0x407230
cmp eax, 0xdc27729c
jle 0x407517
cmp eax, 0xe36a5398
jle 0x407787
cmp eax, 0xea3b2e9f
jg 0x407869
cmp eax, 0xe5a76e85
jg 0x40801d
cmp eax, 0xe36a5399
je 0x40867a
cmp eax, 0xe5149683
jne 0x407230
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0xdd8e08c1
jmp 0x407230
cmp eax, 0xb090202f
jg 0x407749
cmp eax, 0xae3f5a8a
jg 0x4078b4
cmp eax, 0xac627534
jg 0x407e34
cmp eax, 0xa460d5ac
je 0x4083ee
cmp eax, 0xac439ca0
jne 0x407230
movzx eax, byte [esp + 2]
mov ecx, dword [esp + 4]
add word [esi + eax*2 + 0x8612], cx
mov eax, 0x5e996b6b
mov edx, dword [esp + 8]
mov dword [esp + 0xd4], edx
mov dword [esp + 0xc8], ecx
jmp 0x407230
cmp eax, 0x591f737
jg 0x40756c
cmp eax, 0xfbab99c3
jle 0x4078f7
cmp eax, 0x2d53ef4
jg 0x407bb0
cmp eax, 0xfbab99c4
je 0x4080ff
cmp eax, 0xfe8b0063
jne 0x407230
mov eax, 0xdc27729d
cmp dword [esp + 4], 0
je 0x407230
mov eax, 0xdf357e07
jmp 0x407230
cmp eax, 0x4fcfeb72
jg 0x4075b6
cmp eax, 0x4a04b742
jle 0x407949
cmp eax, 0x4af1826f
jg 0x407be3
cmp eax, 0x4a04b743
je 0x408133
cmp eax, 0x4aec7d8c
jne 0x407230
mov eax, dword [esp + 0xd8]
inc eax
mov dword [esp + 0x48], eax
mov eax, 0x67f927f7
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x6c], ecx
movzx ecx, byte [esp + 3]
mov byte [esp + 0x13], cl
jmp 0x407230
cmp eax, 0xd4b41b9f
jg 0x4076ff
cmp eax, 0xc80b8fbb
jle 0x407ac1
cmp eax, 0xcc28237d
jg 0x407d46
cmp eax, 0xc80b8fbc
je 0x40830f
cmp eax, 0xc96c7e4e
jne 0x407230
inc word [esi + 0x8634]
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x16c], 0x11
mov eax, dword [esp + 0xc]
add al, 0xfd
jmp 0x407eff
cmp eax, 0x92727fb
jle 0x407988
cmp eax, 0xb6f30d5
jg 0x407c13
cmp eax, 0x92727fc
je 0x407204
cmp eax, 0x9ba73dd
jne 0x407230
inc word [esi + 0x8634]
mov ecx, dword [esp + 0x54]
mov byte [esp + ecx + 0x16c], 0x11
mov eax, dword [esp + 0x1c]
add al, 0xfd
jmp 0x407931
cmp eax, 0x55a7fc08
jle 0x4079c7
cmp eax, 0x592e28c2
jg 0x407c41
cmp eax, 0x55a7fc09
je 0x408151
cmp eax, 0x57efd8c7
jne 0x407230
mov eax, dword [esp + 4]
lea ecx, [eax + 1]
mov eax, 0xbae022f4
mov dword [esp + 0x14], ecx
cmp ecx, 6
je 0x4075fc
mov eax, 0x4aec7d8c
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xa4], ecx
jmp 0x407230
cmp eax, 0x1afb616c
jle 0x407a01
cmp eax, 0x1bf600d2
jg 0x407c79
cmp eax, 0x1afb616d
je 0x408211
cmp eax, 0x1b7f8df8
jne 0x407230
inc word [esi + 0x8632]
mov ecx, dword [esp + 0x18]
mov byte [esp + ecx + 0x16c], 0x10
mov eax, dword [esp + 4]
add al, 0xfd
lea edx, [ecx + 2]
mov dword [esp + 0xb8], edx
mov byte [esp + ecx + 0x16d], al
mov eax, 0x10e27f70
jmp 0x407230
cmp eax, 0x5f1229ee
jle 0x407a43
cmp eax, 0x640b42b4
jg 0x407cc4
cmp eax, 0x5f1229ef
je 0x408260
cmp eax, 0x61a21e34
jne 0x407230
cmp dword [esi + 0x44], 8
mov eax, 0xf84ee056
jae 0x407230
mov eax, 0xa3b26a65
jmp 0x407230
cmp eax, 0x90d1bc17
jle 0x407a86
cmp eax, 0x92a944f7
jg 0x407d0e
cmp eax, 0x90d1bc18
je 0x4082d7
cmp eax, 0x91848315
jne 0x407230
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x5acf6d4b
jmp 0x407230
cmp eax, 0xd743963d
jle 0x407b00
cmp eax, 0xda1292a0
jg 0x407d6e
cmp eax, 0xd743963e
je 0x408322
cmp eax, 0xd7c8bec6
jne 0x407230
inc word [esi + 0x8634]
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x16c], 0x11
mov eax, dword [esp + 0xc]
add al, 0xfd
jmp 0x408883
cmp eax, 0xbb318bc9
jle 0x407b4b
cmp eax, 0xbde9624c
jg 0x407dbb
cmp eax, 0xbb318bca
je 0x40838a
cmp eax, 0xbde05ff6
jne 0x407230
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x61a21e34
jmp 0x407230
cmp eax, 0xddb8b2a7
jle 0x407b76
cmp eax, 0xdf78cb4f
jg 0x407df3
cmp eax, 0xddb8b2a8
je 0x4083c2
cmp eax, 0xdf357e07
jne 0x407230
mov eax, 0xbde9624d
jmp 0x4089fb
cmp eax, 0x3f4c82ad
jg 0x407f17
cmp eax, 0x3cf3e085
je 0x408499
cmp eax, 0x3d37749b
jne 0x407230
cmp dword [esi + 0x44], 8
mov eax, 0xb4e9d2f1
jae 0x407230
mov eax, 0xa34c477f
jmp 0x407230
cmp eax, 0x78d80886
jg 0x407f4f
cmp eax, 0x733a9d3e
je 0x4084ca
cmp eax, 0x769f3af6
jne 0x407230
mov dword [esp + 0x5c], 0
mov eax, 0xb0902030
jmp 0x407230
cmp eax, 0xa34c477e
jg 0x407ff5
cmp eax, 0x9c6776a0
je 0x408634
cmp eax, 0x9ee368c2
jne 0x407230
movzx eax, byte [esi + 0x48]
mov ebp, dword [esp + 0x134]
lea ecx, [ebp + 1]
mov dword [esi + 0x30], ecx
mov byte [ebp], al
mov eax, 0xcc28237e
jmp 0x407230
cmp eax, 0xf4d522f5
jg 0x40805f
cmp eax, 0xea3b2ea0
je 0x4086ae
cmp eax, 0xf2bfeb79
jne 0x407230
movzx eax, byte [esp + 2]
mov ecx, dword [esp + 4]
add word [esi + eax*2 + 0x8612], cx
mov eax, 0xfbab99c4
mov edx, dword [esp + 8]
mov dword [esp + 0x90], edx
mov dword [esp + 0x78], ecx
jmp 0x407230
cmp eax, 0xaea72969
jle 0x40809a
cmp eax, 0xaea7296a
je 0x4080e5
cmp eax, 0xaffb0590
jne 0x407230
mov ecx, dword [esi + 0x30]
mov eax, 0x90d1bc18
mov dword [esp + 0x138], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407230
mov eax, 0xd4061633
jmp 0x407230
cmp eax, 0xf84ee056
je 0x408716
cmp eax, 0xfabf9fed
je 0x4087ae
cmp eax, 0xfb1eab45
jne 0x407230
inc word [esi + 0x8636]
mov ecx, dword [esp + 0x54]
mov byte [esp + ecx + 0x16c], 0x12
mov eax, dword [esp + 0x1c]
add al, 0xf5
lea edx, [ecx + 2]
mov dword [esp + 0x40], edx
mov byte [esp + ecx + 0x16d], al
mov eax, 0xf5e41b06
jmp 0x407230
cmp eax, 0x44c7370e
je 0x408738
cmp eax, 0x45c5c438
je 0x4087d5
cmp eax, 0x46a5bf34
jne 0x407230
mov eax, 0x2d53ef5
cmp dword [esp + 0x64], 0
jns 0x40797b
mov eax, 0x600083d
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x3c], ecx
jmp 0x407230
cmp eax, 0x591f738
je 0x40874a
cmp eax, 0x600083d
je 0x4087f1
cmp eax, 0x8bc75ed
jne 0x407230
movzx eax, byte [esi + 0x48]
mov ebp, dword [esp + 0xf4]
lea ecx, [ebp + 1]
mov dword [esi + 0x30], ecx
mov byte [ebp], al
mov eax, 0xbde05ff6
jmp 0x407230
cmp eax, 0x4fcfeb73
je 0x408779
cmp eax, 0x5083cf85
je 0x408826
cmp eax, 0x5594ac29
jne 0x407230
cmp dword [esi + 0x44], 8
mov eax, 0xd4b41ba0
jae 0x407230
mov eax, 0x44c7370e
jmp 0x407230
cmp eax, 0xf5f950c
je 0x40886a
cmp eax, 0x10e27f70
je 0x4088c2
cmp eax, 0x199befae
jne 0x407230
mov eax, dword [esp + 0x30]
cmp byte [eax + esi + 0x9031], 0
mov eax, 0x8cac3ac4
je 0x407230
mov eax, 0x78d80887
jmp 0x407230
cmp eax, 0x5ae20b7b
je 0x40889b
cmp eax, 0x5e996b6b
je 0x4088e5
cmp eax, 0x5ebfff81
jne 0x407230
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x34]
cmp byte [ecx + eax - 1], 0
mov eax, 0x9c6776a0
je 0x407230
mov eax, 0x3f4c82ae
jmp 0x407230
cmp eax, 0x862c0ef0
je 0x40891c
cmp eax, 0x8cac3ac4
je 0x408926
cmp eax, 0x9037e3ef
jne 0x407230
mov eax, 0x591f738
cmp dword [esp + 4], 3
jb 0x407230
mov eax, 0x1b7f8df8
jmp 0x407230
cmp eax, 0xc0f9f651
je 0x408939
cmp eax, 0xc485cb01
je 0x40896d
cmp eax, 0xc606385c
jne 0x407230
movzx eax, byte [esi + 0x48]
mov ebp, dword [esp + 0xf0]
lea ecx, [ebp + 1]
mov dword [esi + 0x30], ecx
mov byte [ebp], al
mov eax, 0xac627535
jmp 0x407230
cmp eax, 0xd4b41ba0
je 0x40894b
cmp eax, 0xd581465c
je 0x4089a1
cmp eax, 0xd6775cd1
jne 0x407230
mov eax, dword [esp + 0x140]
lea ecx, [eax + 1]
mov dword [esp + 0x9c], ecx
mov byte [esp + eax + 0x16c], 0
mov eax, 0x94aab780
mov ebx, dword [esp + 0x164]
jmp 0x407230
cmp eax, 0xb0902030
je 0x4089c3
cmp eax, 0xb4e9d2f1
je 0x408a08
cmp eax, 0xbae022f4
jne 0x407230
mov eax, 0xdb32d6ca
jmp 0x407230
cmp eax, 0xdc27729d
je 0x4089ea
cmp eax, 0xdd758a36
je 0x408a2a
cmp eax, 0xdd8e08c1
jne 0x407230
cmp dword [esi + 0x44], 8
mov eax, 0xd581465c
jae 0x407230
mov eax, 0xb81e130
jmp 0x407230
cmp eax, 0x2d53ef5
je 0x408173
cmp eax, 0x3563f57
jne 0x407230
movzx eax, byte [esi + 0x48]
mov edx, dword [esp + 0x120]
lea ecx, [edx + 1]
mov dword [esi + 0x30], ecx
mov byte [edx], al
mov eax, 0xe5149683
jmp 0x407230
cmp eax, 0x4af18270
je 0x40819b
cmp eax, 0x4fad353e
jne 0x407230
mov eax, 0x26edfbbd
cmp dword [esp + 0xc], 3
jb 0x407230
mov eax, 0xdf78cb50
jmp 0x407230
cmp eax, 0xb6f30d6
je 0x4081d2
cmp eax, 0xb81e130
jne 0x407230
mov eax, 0x96678144
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0xe4], ecx
jmp 0x407230
cmp eax, 0x592e28c3
je 0x4081ec
cmp eax, 0x5acf6d4b
jne 0x407230
mov ecx, dword [esi + 0x44]
mov eax, 0xbe2dd4d5
mov dword [esp + 0x114], ecx
cmp ecx, 8
jae 0x407230
mov eax, 0x5ae20b7b
jmp 0x407230
cmp eax, 0x1bf600d3
je 0x408297
cmp eax, 0x20de82b9
jne 0x407230
mov ecx, dword [esp + 0x110]
lea eax, [ecx + 1]
mov dword [esp + 0xb4], eax
movzx eax, byte [esp + 2]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x5f1229ef
mov ecx, dword [esp + 0x158]
mov dword [esp + 0x88], ecx
jmp 0x407230
cmp eax, 0x640b42b5
je 0x4082b6
cmp eax, 0x65bda9db
jne 0x407230
mov ecx, dword [esp + 0xe0]
mov eax, 0xddb8b2a8
sub ecx, 1
mov dword [esp + 0x13c], ecx
jb 0x407cf7
mov eax, 0xf4d522f6
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x100], ecx
jmp 0x407230
cmp eax, 0x92a944f8
je 0x4082f5
cmp eax, 0x9493bbe2
jne 0x407230
mov ecx, dword [esi + 0x30]
mov eax, 0x9ee368c2
mov dword [esp + 0x134], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407230
mov eax, 0xcc28237e
jmp 0x407230
cmp eax, 0xcc28237e
je 0x408354
cmp eax, 0xd4061633
jne 0x407230
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x55a7fc09
jmp 0x407230
cmp eax, 0xda1292a1
je 0x408366
cmp eax, 0xdb32d6ca
jne 0x407230
inc word [esi + 0x8632]
mov edx, dword [esp + 0x18]
mov byte [esp + edx + 0x16c], 0x10
mov eax, dword [esp + 0xa4]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0xc4], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x2b1c22be
jmp 0x407230
cmp eax, 0xbde9624d
je 0x4083a8
cmp eax, 0xbe2dd4d5
jne 0x407230
mov ecx, dword [esi + 0x30]
mov eax, 0xea3b2ea0
mov dword [esp + 0x124], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407230
mov eax, 0x91848315
jmp 0x407230
cmp eax, 0xdf78cb50
je 0x4083d4
cmp eax, 0xe1ff22a1
jne 0x407230
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 0x441dea]
movzx eax, byte [esi + eax + 0x9152]
mov ecx, dword [esi + 0x44]
shl eax, cl
or dword [esi + 0x48], eax
add ecx, 3
mov dword [esi + 0x44], ecx
mov eax, 0x3d37749b
jmp 0x407230
cmp eax, 0xac627535
je 0x408423
cmp eax, 0xac68897b
jne 0x407230
mov eax, dword [esp + 0x150]
inc word [esi + eax*2 + 0x8612]
mov ecx, dword [esp + 0x98]
lea eax, [ecx + 1]
mov dword [esp + 0x24], eax
movzx eax, byte [esp + 3]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x4aec7d8c
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0x14], ecx
jmp 0x407230
cmp eax, 0x2cadce36
je 0x4084df
cmp eax, 0x2e444b18
jne 0x407230
mov eax, dword [esp + 0xd8]
movzx ecx, byte [esp + eax + 0x2ac]
mov eax, 0x592e28c3
mov byte [esp + 3], cl
test cl, cl
je 0x407230
mov eax, 0xdd758a36
jmp 0x407230
cmp eax, 0x6ce6b1de
je 0x408501
cmp eax, 0x71a7c311
jne 0x407230
inc word [esi + 0x8636]
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x16c], 0x12
mov eax, dword [esp + 0xc]
add al, 0xf5
lea ecx, [edx + 2]
mov dword [esp + 0x58], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0xddb8b2a8
jmp 0x407230
cmp eax, 0x3f4c82ae
je 0x408535
cmp eax, 0x42f06091
jne 0x407230
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
add word [eax], cx
mov eax, 0x94aab780
mov edx, dword [esp + 0x54]
mov dword [esp + 0x9c], edx
mov ebx, ecx
jmp 0x407230
cmp eax, 0x78d80887
je 0x408547
cmp eax, 0x7f5d27d1
jne 0x407230
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xa4]
add word [esi + eax*2 + 0x8612], dx
mov eax, 0x4af18270
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xa0], edx
jmp 0x407230
cmp eax, 0x96e1e07f
je 0x408647
cmp eax, 0x97bd12b2
jne 0x407230
mov eax, 0x57efd8c7
movzx ecx, byte [esp + 2]
cmp byte [esp + 3], cl
je 0x407fc2
mov eax, 0xe8cbbcfb
movzx ecx, byte [esp + 3]
mov dword [esp + 0x150], ecx
movzx ecx, byte [esp + 2]
mov dword [esp + 0xd0], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x18], ecx
jmp 0x407230
cmp eax, 0xa34c477f
je 0x408667
cmp eax, 0xa3b26a65
jne 0x407230
mov dword [esp + 0x64], 0x12
mov eax, 0x46a5bf34
jmp 0x407230
cmp eax, 0xe5a76e86
je 0x4086cb
cmp eax, 0xe8cbbcfb
jne 0x407230
mov eax, 0xac68897b
cmp dword [esp + 4], 0
je 0x408044
mov eax, 0x9037e3ef
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0xc0], ecx
jmp 0x407230
cmp eax, 0xf4d522f6
je 0x4086e5
cmp eax, 0xf5e41b06
jne 0x407230
mov dword [esp + 0x20], 0
mov eax, 0x4aec7d8c
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x148]
mov dword [esp + 0x14], ecx
jmp 0x407230
cmp eax, 0xae859fc6
jne 0x408a56
mov ebp, dword [esp + 0xb0]
movzx eax, byte [esp + ebp + 0x16c]
mov edx, dword [esp + 0xbc]
movsx edx, byte [edx + 0x442bc4]
mov ecx, dword [esp + 0x114]
shl eax, cl
or dword [esi + 0x48], eax
lea eax, [ebp + 1]
mov dword [esp + 0x10c], eax
add dword [esi + 0x44], edx
mov eax, 0xdd8e08c1
jmp 0x407230
mov eax, 0xc96c7e4e
cmp dword [esp + 0xc], 0xb
jb 0x407230
mov eax, 0x71a7c311
jmp 0x407230
mov ecx, dword [esp + 0x78]
mov eax, 0x45c5c438
sub ecx, 1
mov dword [esp + 0x168], ecx
jb 0x408119
mov eax, 0xd743963e
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x154], ecx
mov dword [esp + 0x8c], ecx
jmp 0x407230
mov eax, 0x199befae
cmp dword [esp + 0x50], 2
jge 0x408144
mov eax, 0x78d80887
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x30], ecx
jmp 0x407230
mov ecx, dword [esi + 0x44]
mov eax, 0xaffb0590
mov dword [esp + 0x11c], ecx
cmp ecx, 8
jae 0x407230
mov eax, 0x92727fc
jmp 0x407230
mov eax, dword [esp + 0x3c]
movzx eax, byte [eax + 0x441dea]
cmp byte [esi + eax + 0x9152], 0
mov eax, 0xc80b8fbc
je 0x407230
mov eax, 0x600083d
jmp 0x407230
mov ecx, dword [esp + 0xa0]
mov eax, 0x2b1c22be
sub ecx, 1
mov dword [esp + 0x14c], ecx
jb 0x4081b8
mov eax, 0x4fcfeb73
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0xc4], ecx
mov dword [esp + 0x108], ecx
jmp 0x407230
mov eax, 0xf2bfeb79
cmp dword [esp + 4], 3
jb 0x407230
mov eax, 0xc485cb01
jmp 0x407230
mov eax, 0x5083cf85
cmp dword [esp + 4], 0
je 0x4081fd
mov eax, 0xb6f30d6
mov edi, dword [esp + 8]
mov ecx, dword [esp + 4]
mov dword [esp + 0x94], ecx
jmp 0x407230
mov ebp, edi
mov edi, ebx
mov ebx, dword [esp + 0xf8]
movzx edx, byte [esp + ebx + 0x16c]
movzx eax, word [esi + edx*2 + 0x8cd2]
mov ecx, dword [esi + 0x44]
shl eax, cl
mov dword [esp + 0xbc], edx
movzx edx, byte [esi + edx + 0x9152]
or dword [esi + 0x48], eax
add edx, ecx
lea eax, [ebx + 1]
mov ebx, edi
mov edi, ebp
mov dword [esp + 0xb0], eax
mov dword [esi + 0x44], edx
mov eax, 0x5acf6d4b
jmp 0x407230
mov ecx, dword [esp + 0x88]
mov eax, 0x10e27f70
sub ecx, 1
mov dword [esp + 0x158], ecx
jb 0x40827d
mov eax, 0x20de82b9
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0xb8], ecx
mov dword [esp + 0x110], ecx
jmp 0x407230
mov eax, dword [esp + 0x30]
dec eax
mov ecx, dword [esp + 0x118]
shl eax, cl
or dword [esi + 0x48], eax
add dword [esi + 0x44], 5
mov eax, 0x61a21e34
jmp 0x407230
mov eax, 0x5ebfff81
cmp dword [esp + 0x38], 0x102
jge 0x4082ca
mov eax, 0x3f4c82ae
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x34], ecx
jmp 0x407230
movzx eax, byte [esi + 0x48]
mov ebp, dword [esp + 0x138]
lea ecx, [ebp + 1]
mov dword [esi + 0x30], ecx
mov byte [ebp], al
mov eax, 0xd4061633
jmp 0x407230
mov eax, 0xfabf9fed
cmp dword [esp + 0xc], 3
jb 0x407230
mov eax, 0xaea7296a
jmp 0x407230
mov eax, dword [esp + 0x3c]
dec eax
mov dword [esp + 0x64], eax
mov eax, 0x46a5bf34
jmp 0x407230
mov eax, dword [esp + 0x154]
lea ecx, [eax + 1]
mov dword [esp + 0x90], ecx
movzx ecx, byte [esp + 2]
mov byte [esp + eax + 0x16c], cl
mov eax, 0xfbab99c4
mov ecx, dword [esp + 0x168]
mov dword [esp + 0x78], ecx
jmp 0x407230
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x2cadce36
jmp 0x407230
mov eax, 0xe1ff22a1
mov ecx, dword [esp + 0x128]
cmp dword [esp + 0x60], ecx
jl 0x40837d
mov eax, 0x769f3af6
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x7c], ecx
jmp 0x407230
movzx eax, byte [esi + 0x48]
mov ebp, dword [esp + 0x12c]
lea ecx, [ebp + 1]
mov dword [esi + 0x30], ecx
mov byte [ebp], al
mov eax, 0xc0f9f651
jmp 0x407230
mov eax, 0xac439ca0
cmp dword [esp + 4], 3
jb 0x407230
mov eax, 0x6ce6b1de
jmp 0x407230
mov eax, 0x65f504ff
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x2c], ecx
jmp 0x407230
mov eax, 0xd7c8bec6
cmp dword [esp + 0xc], 0xb
jb 0x407230
mov eax, 0xf5f950c
jmp 0x407230
mov ecx, dword [esp + 0x104]
lea eax, [ecx + 1]
mov dword [esp + 0xd4], eax
movzx eax, byte [esp + 2]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x5e996b6b
mov ecx, dword [esp + 0x144]
mov dword [esp + 0xc8], ecx
jmp 0x407230
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x5594ac29
jmp 0x407230
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x28]
add word [eax], cx
mov eax, 0xe36a5399
mov edx, dword [esp + 8]
mov dword [esp + 0xa8], edx
mov dword [esp + 0x80], ecx
jmp 0x407230
mov ecx, esi
mov edx, 2
push 0
push 7
push 0x13
call fcn.00408a70
add esp, 0xc
mov ecx, dword [esi + 0x44]
mov eax, 2
shl eax, cl
or dword [esi + 0x48], eax
add ecx, 2
mov dword [esi + 0x44], ecx
mov eax, 0x55a7fc09
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xfc], ecx
jmp 0x407230
mov eax, dword [esp + 0x130]
lea ecx, [eax + 1]
mov dword [esp + 0xa8], ecx
mov byte [esp + eax + 0x16c], 0
mov eax, 0xe36a5399
mov ecx, dword [esp + 0x15c]
mov dword [esp + 0x80], ecx
jmp 0x407230
mov eax, 0x65f504ff
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x2c], ecx
jmp 0x407230
mov ecx, dword [esi + 0x44]
mov eax, 0x9493bbe2
mov dword [esp + 0x118], ecx
cmp ecx, 8
jae 0x407230
mov eax, 0x1bf600d3
jmp 0x407230
inc word [esi + 0x8632]
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x16c], 0x10
mov eax, dword [esp + 4]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0xdc], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x733a9d3e
jmp 0x407230
mov dword [esp + 0x50], 0x1e
mov eax, 0x4a04b743
jmp 0x407230
mov ebp, dword [esp + 0x34]
push ebp
push dword [esp + 0x6c]
lea eax, [esp + 0x2b4]
push eax
call fcn.00409600
add esp, 0xc
lea eax, [esp + ebp]
add eax, 0x2ac
mov esi, dword [esp + 0x30]
push esi
push dword [esp + 0xf0]
push eax
call fcn.00409600
add esp, 0xc
lea eax, [esi + ebp]
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x400]
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x20], 0
mov word [eax + 0x24], 0
mov byte [esp + 0x13], 0xff
mov dword [esp + 0x48], 0
mov eax, 0x67f927f7
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0
jmp 0x407230
mov ecx, ebx
mov eax, 0xf5e41b06
sub ecx, 1
mov dword [esp + 0x164], ecx
jb 0x40861d
mov eax, 0xd6775cd1
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x140], ecx
mov dword [esp + 0x40], ecx
jmp 0x407230
mov eax, dword [esp + 0x34]
dec eax
mov dword [esp + 0x38], eax
mov eax, 0x640b42b5
jmp 0x407230
mov dword [esp + 0xac], 0
mov eax, 0x97bd12b2
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x84], ecx
jmp 0x407230
mov eax, dword [esp + 0x7c]
inc eax
mov dword [esp + 0x60], eax
mov eax, 0xda1292a1
jmp 0x407230
mov ecx, dword [esp + 0x80]
mov eax, 0x96e1e07f
sub ecx, 1
mov dword [esp + 0x15c], ecx
jb 0x408697
mov eax, 0x3cf3e085
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x130], ecx
mov dword [esp + 0x44], ecx
jmp 0x407230
movzx eax, byte [esi + 0x48]
mov edx, dword [esp + 0x124]
lea ecx, [edx + 1]
mov dword [esi + 0x30], ecx
mov byte [edx], al
mov eax, 0x91848315
jmp 0x407230
mov eax, 0x9ba73dd
cmp dword [esp + 0x1c], 0xb
jb 0x407230
mov eax, 0xfb1eab45
jmp 0x407230
mov ecx, dword [esp + 0x100]
lea eax, [ecx + 1]
mov dword [esp + 0xe8], eax
mov byte [esp + ecx + 0x16c], 0
mov eax, 0x65bda9db
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0xe0], ecx
jmp 0x407230
mov ecx, dword [esi + 0x30]
mov eax, 0x8bc75ed
mov dword [esp + 0xf4], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407230
mov eax, 0xbde05ff6
jmp 0x407230
mov dword [esp + 0x60], 0
mov eax, 0xda1292a1
jmp 0x407230
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 4]
add word [esi + eax*2 + 0x8612], dx
mov eax, 0x5f1229ef
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0x88], edx
jmp 0x407230
mov ecx, dword [esp + 0x108]
lea eax, [ecx + 1]
mov dword [esp + 0xcc], eax
movzx eax, byte [esp + 2]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x4af18270
mov ecx, dword [esp + 0x14c]
mov dword [esp + 0xa0], ecx
jmp 0x407230
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x28]
add word [eax], cx
mov eax, 0x65bda9db
mov edx, dword [esp + 8]
mov dword [esp + 0xe8], edx
mov dword [esp + 0xe0], ecx
jmp 0x407230
mov dword [esp + 0x94], 0
mov eax, 0x5083cf85
mov edi, dword [esp + 0x8c]
jmp 0x407230
mov ecx, dword [esp + 0x3c]
mov eax, ecx
cmp ecx, 4
jge 0x408801
mov eax, 3
lea ecx, [eax + 1]
mov dword [esp + 0x128], ecx
add eax, 0xfffffffd
mov ecx, dword [esi + 0x44]
shl eax, cl
or dword [esi + 0x48], eax
add ecx, 4
mov dword [esi + 0x44], ecx
mov eax, 0x5594ac29
jmp 0x407230
mov eax, dword [esp + 0xc]
lea ecx, [eax + 1]
mov eax, 0x862c0ef0
mov dword [esp + 0x1c], ecx
cmp ecx, 0x8a
je 0x408843
mov eax, 0x4aec7d8c
mov dword [esp + 0x24], edi
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x148], ecx
mov dword [esp + 0x54], edi
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x14], ecx
jmp 0x407230
inc word [esi + 0x8636]
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x16c], 0x12
mov eax, dword [esp + 0xc]
add al, 0xf5
lea ecx, [edx + 2]
mov dword [esp + 0x44], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x96e1e07f
jmp 0x407230
mov eax, 0xae859fc6
cmp dword [esp + 0xbc], 0x10
jae 0x4088af
mov eax, 0x96678144
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xe4], ecx
jmp 0x407230
mov dword [esp + 0xc0], 0
mov eax, 0xac68897b
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x98], ecx
jmp 0x407230
mov ecx, dword [esp + 0xc8]
mov eax, 0x733a9d3e
sub ecx, 1
mov dword [esp + 0x144], ecx
jb 0x408902
mov eax, 0xa460d5ac
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0x104], ecx
jmp 0x407230
mov eax, 0xe5a76e86
jmp 0x407230
mov eax, dword [esp + 0x30]
dec eax
mov dword [esp + 0x50], eax
mov eax, 0x4a04b743
jmp 0x407230
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x3d37749b
jmp 0x407230
mov ecx, dword [esi + 0x30]
mov eax, 0xc606385c
mov dword [esp + 0xf0], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407230
mov eax, 0xac627535
jmp 0x407230
inc word [esi + 0x8632]
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x16c], 0x10
mov eax, dword [esp + 4]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0x8c], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x45c5c438
jmp 0x407230
mov ecx, dword [esi + 0x30]
mov eax, 0x3563f57
mov dword [esp + 0x120], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407230
mov eax, 0xe5149683
jmp 0x407230
mov eax, 0x1afb616d
mov ecx, dword [esp + 0xfc]
cmp dword [esp + 0x5c], ecx
jb 0x4089da
mov eax, 0xae3f5a8b
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xf8], ecx
jmp 0x407230
mov eax, 0x65f504ff
cmp dword [esp + 0xc], 0
je 0x4089fb
mov eax, 0x92a944f8
mov ecx, dword [esp + 8]
mov dword [esp + 0x2c], ecx
jmp 0x407230
mov ecx, dword [esi + 0x30]
mov eax, 0xbb318bca
mov dword [esp + 0x12c], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407230
mov eax, 0xc0f9f651
jmp 0x407230
mov eax, 0x97bd12b2
cmp dword [esp + 0xc], 0
je 0x408a3b
mov eax, 0x4fad353e
mov ecx, dword [esp + 8]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xac], ecx
jmp 0x407230
cmp eax, 0xae3f5a8b
jne 0x407230
add esp, 0x3ec
pop esi
pop edi
pop ebx
pop ebp
ret