Function at 0x4071e0
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.00408ad0
add esp, 0xc
mov ecx, esi
mov edx, 1
push 0
push 0xf
push 0x20
call fcn.00408ad0
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, 0xbfc6b29f
jmp 0x407260
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x44], ecx
nop
nop
nop
nop
cmp eax, 0x9979f10
jg 0x4072d0
cmp eax, 0xc9df469b
jg 0x4073d0
cmp eax, 0xad34e5ea
jg 0x40743e
cmp eax, 0x985acfa1
jle 0x4076d6
cmp eax, 0xa8b5c249
jg 0x407851
cmp eax, 0x9ab89aa2
jg 0x40805a
cmp eax, 0x985acfa2
je 0x4085eb
cmp eax, 0x99d5dcb6
jne 0x407260
mov eax, 0x9ab89aa3
cmp dword [esp + 4], 0
je 0x407260
mov eax, 0x459b4826
jmp 0x407260
cmp eax, 0x484154ef
jg 0x407360
cmp eax, 0x2ad326a6
jle 0x407493
cmp eax, 0x3e93f048
jle 0x40762f
cmp eax, 0x4397a0c7
jg 0x4077f3
cmp eax, 0x42b9a85a
jg 0x407f6c
cmp eax, 0x3e93f049
je 0x4084db
cmp eax, 0x417646fd
jne 0x407260
mov eax, dword [esp + 0xd8]
inc eax
mov dword [esp + 0x50], eax
mov eax, 0x629e1d65
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x78], ecx
movzx ecx, byte [esp + 3]
mov byte [esp + 0x13], cl
jmp 0x407260
cmp eax, 0x6277d4cf
jle 0x4074e8
cmp eax, 0x70e6c21a
jle 0x407679
cmp eax, 0x77bcd5b1
jg 0x40781e
cmp eax, 0x733a1883
jg 0x407fac
cmp eax, 0x70e6c21b
je 0x4084ed
cmp eax, 0x721a1f83
jne 0x407260
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x28]
add word [eax], cx
mov eax, 0xc22b7970
mov edx, dword [esp + 8]
mov dword [esp + 0xb0], edx
mov dword [esp + 0x8c], ecx
jmp 0x407260
cmp eax, 0xed3c5325
jle 0x407538
cmp eax, 0xfd024e6b
jle 0x4077a5
cmp eax, 0x3bbdf75
jg 0x407895
cmp eax, 0xcb63a
jg 0x4080bd
cmp eax, 0xfd024e6c
je 0x408683
cmp eax, 0xfe62b88d
jne 0x407260
mov eax, 0xa8b5c24a
cmp dword [esp + 4], 0
je 0x407423
mov eax, 0x2785bf3e
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xa0], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0xc8], ecx
jmp 0x407260
cmp eax, 0xb93bd8e5
jg 0x407767
cmp eax, 0xb514737a
jle 0x4078ea
cmp eax, 0xb6739a71
jg 0x407f3e
cmp eax, 0xb514737b
je 0x4084b4
cmp eax, 0xb66371d3
jne 0x407260
mov eax, 0x5928546a
cmp dword [esp + 0x58], 2
jge 0x407486
mov eax, 0x4e2cfc7c
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x2c], ecx
jmp 0x407260
cmp eax, 0x1deb61c8
jg 0x407591
cmp eax, 0x15cf0438
jle 0x407915
cmp eax, 0x18829f93
jg 0x407c27
cmp eax, 0x15cf0439
je 0x408171
cmp eax, 0x1696ebab
jne 0x407260
inc word [esi + 0x8634]
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x16c], 0x11
mov eax, dword [esp + 0xc]
add al, 0xfd
jmp 0x4087b9
cmp eax, 0x4e5437db
jg 0x4075e2
cmp eax, 0x4a602d9a
jle 0x407948
cmp eax, 0x4e16cd2c
jg 0x407c5f
cmp eax, 0x4a602d9b
je 0x4081ae
cmp eax, 0x4cd9a4f0
jne 0x407260
mov dword [esp + 0x9c], 0
mov eax, 0xb93bd8e6
mov edi, dword [esp + 0x6c]
jmp 0x407260
cmp eax, 0xdc5dd7e6
jg 0x407714
cmp eax, 0xd087aece
jle 0x407af5
cmp eax, 0xd781ef35
jg 0x407e50
cmp eax, 0xd087aecf
je 0x4083a2
cmp eax, 0xd0c9973a
jne 0x407260
mov ecx, dword [esi + 0x30]
mov eax, 0x34be47ea
mov dword [esp + 0x140], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407260
mov eax, 0x3e93f049
jmp 0x407260
cmp eax, 0x21f6a551
jle 0x40799b
cmp eax, 0x25761827
jg 0x407d36
cmp eax, 0x21f6a552
je 0x4081e3
cmp eax, 0x24f4783b
jne 0x407260
mov dword [esp + 0x20], 0
mov eax, 0x417646fd
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x150]
mov dword [esp + 0x18], ecx
jmp 0x407260
cmp eax, 0x55a60947
jle 0x4079de
cmp eax, 0x5aae7690
jg 0x407d66
cmp eax, 0x55a60948
je 0x4081f6
cmp eax, 0x5928546a
jne 0x407260
mov eax, dword [esp + 0x2c]
cmp byte [eax + esi + 0x9031], 0
mov eax, 0x21f6a552
je 0x407260
mov eax, 0x4e2cfc7c
jmp 0x407260
cmp eax, 0x335e50bc
jle 0x407a34
cmp eax, 0x397f4d05
jg 0x407d9a
cmp eax, 0x335e50bd
je 0x4082a5
cmp eax, 0x34be47ea
jne 0x407260
movzx eax, byte [esi + 0x48]
mov ebp, dword [esp + 0x140]
lea ecx, [ebp + 1]
mov dword [esi + 0x30], ecx
mov byte [ebp], al
mov eax, 0x3e93f049
jmp 0x407260
cmp eax, 0x6649b6e8
jle 0x407a77
cmp eax, 0x67459028
jg 0x407dc5
cmp eax, 0x6649b6e9
je 0x4082c7
cmp eax, 0x66b59fd2
jne 0x407260
mov ecx, dword [esp + 0x10c]
lea eax, [ecx + 1]
mov dword [esp + 0xe8], eax
mov byte [esp + ecx + 0x16c], 0
mov eax, 0x6277d4d0
mov ecx, dword [esp + 0x148]
mov dword [esp + 0xe0], ecx
jmp 0x407260
cmp eax, 0x8b67d12e
jle 0x407ab2
cmp eax, 0x8f939316
jg 0x407e03
cmp eax, 0x8b67d12f
je 0x40835b
cmp eax, 0x8dc5b324
jne 0x407260
mov dword [esp + 0x60], 0
mov eax, 0xe6e6bd97
jmp 0x407260
cmp eax, 0xe6356892
jle 0x407b2c
cmp eax, 0xec796f0a
jg 0x407e7f
cmp eax, 0xe6356893
je 0x4083ce
cmp eax, 0xe6e6bd97
jne 0x407260
mov eax, 0x484154f0
mov ecx, dword [esp + 0x130]
cmp dword [esp + 0x60], ecx
jl 0x407757
mov eax, 0x13492a60
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x88], ecx
jmp 0x407260
cmp eax, 0xc22b796f
jle 0x407b95
cmp eax, 0xc81b12a5
jg 0x407ec9
cmp eax, 0xc22b7970
je 0x408432
cmp eax, 0xc78db7f3
jne 0x407260
mov dword [esp + 0x58], 0x1e
mov eax, 0xb66371d3
jmp 0x407260
cmp eax, 0xf71d9e73
jle 0x407bd7
cmp eax, 0xfbae9ddf
jg 0x407ef1
cmp eax, 0xf71d9e74
je 0x408470
cmp eax, 0xf7f05fa3
jne 0x407260
mov ecx, dword [esi + 0x30]
mov eax, 0x55a60948
mov dword [esp + 0x12c], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407260
mov eax, 0xc83f81de
jmp 0x407260
cmp eax, 0x46294fe2
jg 0x407ff9
cmp eax, 0x4397a0c8
je 0x408507
cmp eax, 0x459b4826
jne 0x407260
mov eax, 0xf71d9e74
jmp 0x408654
cmp eax, 0x7dd9e34d
jg 0x408022
cmp eax, 0x77bcd5b2
je 0x408538
cmp eax, 0x7ba8e53e
jne 0x407260
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x18829f94
jmp 0x407260
cmp eax, 0xab36d3f2
jg 0x408095
cmp eax, 0xa8b5c24a
je 0x4085fd
cmp eax, 0xa8d83b8f
jne 0x407260
mov dword [esp + 0xc8], 0
mov eax, 0xa8b5c24a
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0xa0], ecx
jmp 0x407260
cmp eax, 0x57df0b7
jg 0x4080f5
cmp eax, 0x3bbdf76
je 0x4086b2
cmp eax, 0x4bcb275
jne 0x407260
inc word [esi + 0x8632]
mov ecx, dword [esp + 0x14]
mov byte [esp + ecx + 0x16c], 0x10
mov eax, dword [esp + 4]
add al, 0xfd
lea edx, [ecx + 2]
mov dword [esp + 0xc0], edx
mov byte [esp + ecx + 0x16d], al
mov eax, 0xa8d83b8f
jmp 0x407260
cmp eax, 0xafd2578f
jle 0x40811d
cmp eax, 0xafd25790
je 0x408157
cmp eax, 0xb49f2a99
jne 0x407260
mov eax, 0xed3c5326
jmp 0x407260
cmp eax, 0x9979f11
je 0x40871f
cmp eax, 0x12fefe81
je 0x4087d1
cmp eax, 0x13492a60
jne 0x407260
mov dword [esp + 0x40], 0
mov eax, 0x84cc08e3
jmp 0x407260
cmp eax, 0x484154f0
je 0x408741
cmp eax, 0x48752bd2
je 0x408811
cmp eax, 0x48a2ff13
jne 0x407260
mov eax, dword [esp + 0xd4]
mov edx, dword [esp + 0xac]
add word [esi + eax*2 + 0x8612], dx
mov eax, 0x7516e8ad
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xa8], edx
jmp 0x407260
cmp eax, 0x1deb61c9
je 0x40876f
cmp eax, 0x1e0661f9
je 0x40882f
cmp eax, 0x1f542b71
jne 0x407260
mov ecx, dword [esi + 0x30]
mov eax, 0xd781ef36
mov dword [esp + 0x13c], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407260
mov eax, 0x7ba8e53e
jmp 0x407260
cmp eax, 0x4e5437dc
je 0x4087a0
cmp eax, 0x521f3a53
je 0x40884c
cmp eax, 0x52adcc0b
jne 0x407260
mov ecx, dword [esp + 0x44]
mov eax, ecx
cmp ecx, 4
jge 0x407a0f
mov eax, 3
lea ecx, [eax + 1]
mov dword [esp + 0x130], 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, 0x81774f97
jmp 0x407260
cmp eax, 0x2ad326a7
je 0x408880
cmp eax, 0x2be6652f
je 0x4088e9
cmp eax, 0x2da55b5c
jne 0x407260
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
add word [eax], cx
mov eax, 0xad34e5eb
mov edx, dword [esp + 0x3c]
mov dword [esp + 0xa4], edx
mov ebx, ecx
jmp 0x407260
cmp eax, 0x6277d4d0
je 0x4088b5
cmp eax, 0x629e1d65
je 0x4088fc
cmp eax, 0x64931fb3
jne 0x407260
mov eax, 0xe6356893
cmp dword [esp + 4], 3
jb 0x407260
mov eax, 0xf2ad8461
jmp 0x407260
cmp eax, 0x81774f97
je 0x408947
cmp eax, 0x84cc08e3
je 0x408960
cmp eax, 0x875ceb6f
jne 0x407260
mov ecx, dword [esi + 0x30]
mov eax, 0x48752bd2
mov dword [esp + 0xf4], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407260
mov eax, 0x985acfa2
jmp 0x407260
cmp eax, 0xc9df469c
je 0x408987
cmp eax, 0xcb27a834
je 0x4089c8
cmp eax, 0xcc10a965
jne 0x407260
mov eax, dword [esp + 0x88]
inc eax
mov dword [esp + 0x60], eax
mov eax, 0xe6e6bd97
jmp 0x407260
cmp eax, 0xdc5dd7e7
je 0x4089a1
cmp eax, 0xe1617eb2
je 0x4089f9
cmp eax, 0xe1701036
jne 0x407260
mov eax, 0x4e16cd2d
movzx ecx, byte [esp + 2]
cmp byte [esp + 3], cl
je 0x407b62
mov eax, 0xfe62b88d
movzx ecx, byte [esp + 3]
mov dword [esp + 0x158], ecx
movzx ecx, byte [esp + 2]
mov dword [esp + 0xd4], ecx
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x14], ecx
jmp 0x407260
cmp eax, 0xb93bd8e6
je 0x408a0b
cmp eax, 0xb971e1b5
je 0x408a69
cmp eax, 0xbfc6b29f
jne 0x407260
mov eax, 0xab36d3f3
cmp dword [esp + 0x38], 0x102
jge 0x407bca
mov eax, 0xc78db7f3
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x34], ecx
jmp 0x407260
cmp eax, 0xed3c5326
je 0x408a4f
cmp eax, 0xf2ad8461
je 0x408a7b
cmp eax, 0xf52c09cc
jne 0x407260
mov ecx, dword [esp + 0xf0]
lea eax, [ecx + 1]
mov dword [esp + 0x74], eax
movzx eax, byte [esp + 2]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x1deb61c9
mov ecx, dword [esp + 0xf8]
mov dword [esp + 0x70], ecx
jmp 0x407260
cmp eax, 0x18829f94
je 0x408213
cmp eax, 0x1d8975af
jne 0x407260
mov ecx, dword [esi + 0x44]
mov eax, 0x7fd09c8d
mov dword [esp + 0x124], ecx
cmp ecx, 8
jae 0x407260
mov eax, 0x77bcd5b2
jmp 0x407260
cmp eax, 0x4e16cd2d
je 0x40822c
cmp eax, 0x4e2cfc7c
jne 0x407260
mov ebp, dword [esp + 0x34]
push ebp
push dword [esp + 0x6c]
lea eax, [esp + 0x2b4]
push eax
call fcn.004095d0
add esp, 0xc
lea eax, [esp + ebp]
add eax, 0x2ac
mov esi, dword [esp + 0x2c]
push esi
push dword [esp + 0xf0]
push eax
call fcn.004095d0
add esp, 0xc
lea eax, [esi + ebp]
mov dword [esp + 0x164], 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 + 0x50], 0
mov eax, 0x629e1d65
mov dword [esp + 0x80], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
jmp 0x407260
cmp eax, 0x25761828
je 0x408266
cmp eax, 0x2785bf3e
jne 0x407260
mov eax, 0xfd024e6c
cmp dword [esp + 4], 3
jb 0x407260
mov eax, 0x4bcb275
jmp 0x407260
cmp eax, 0x5aae7691
je 0x408280
cmp eax, 0x60bea07f
jne 0x407260
inc word [esi + 0x8636]
mov ecx, dword [esp + 0x3c]
mov byte [esp + ecx + 0x16c], 0x12
mov eax, dword [esp + 0x1c]
add al, 0xf5
jmp 0x408520
cmp eax, 0x397f4d06
je 0x4082e5
cmp eax, 0x3be25216
jne 0x407260
mov eax, 0x84cc08e3
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x40], ecx
jmp 0x407260
cmp eax, 0x67459029
je 0x40830c
cmp eax, 0x6d3c7fbd
jne 0x407260
mov eax, dword [esp + 0x44]
movzx eax, byte [eax + 0x442dea]
cmp byte [esi + eax + 0x9152], 0
mov eax, 0x2be6652f
je 0x407260
mov eax, 0x52adcc0b
jmp 0x407260
cmp eax, 0x8f939317
je 0x408382
cmp eax, 0x932fc907
jne 0x407260
mov ecx, dword [esp + 0x94]
mov eax, 0xa8d83b8f
sub ecx, 1
mov dword [esp + 0x15c], ecx
jb 0x407e36
mov eax, 0x42b9a85b
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0xc0], ecx
mov dword [esp + 0x118], ecx
jmp 0x407260
cmp eax, 0xd781ef36
je 0x4083fb
cmp eax, 0xdacc32e8
jne 0x407260
cmp dword [esi + 0x44], 8
mov eax, 0x335e50bd
jae 0x407260
mov eax, 0xb7d9ef58
jmp 0x407260
cmp eax, 0xec796f0b
je 0x408419
cmp eax, 0xec801f70
jne 0x407260
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, 0xb6739a72
jmp 0x407260
cmp eax, 0xc81b12a6
je 0x408466
cmp eax, 0xc83f81de
jne 0x407260
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0xcb63b
jmp 0x407260
cmp eax, 0xfbae9de0
je 0x40848a
cmp eax, 0xfc142a45
jne 0x407260
inc word [esi + 0x8632]
mov edx, dword [esp + 0x14]
mov byte [esp + edx + 0x16c], 0x10
mov eax, dword [esp + 0xac]
add al, 0xfd
lea ecx, [edx + 2]
mov dword [esp + 0xcc], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0xa4d72898
jmp 0x407260
cmp eax, 0xb6739a72
je 0x4084c6
cmp eax, 0xb7d9ef58
jne 0x407260
mov eax, 0x3be25216
mov ecx, dword [esp + 0x114]
mov dword [esp + 0xe4], ecx
jmp 0x407260
cmp eax, 0x42b9a85b
je 0x40855b
cmp eax, 0x42f3224f
jne 0x407260
mov eax, dword [esp + 0x14c]
lea ecx, [eax + 1]
mov dword [esp + 0xa4], ecx
mov byte [esp + eax + 0x16c], 0
mov eax, 0xad34e5eb
mov ebx, dword [esp + 0x168]
jmp 0x407260
cmp eax, 0x733a1884
je 0x408590
cmp eax, 0x7516e8ad
jne 0x407260
mov ecx, dword [esp + 0xa8]
mov eax, 0xa4d72898
sub ecx, 1
mov dword [esp + 0x154], ecx
jb 0x407fdf
mov eax, 0x4a602d9b
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0xcc], ecx
mov dword [esp + 0x110], ecx
jmp 0x407260
cmp eax, 0x46294fe3
je 0x4085ae
cmp eax, 0x4837db75
jne 0x407260
mov eax, dword [esp + 0x34]
dec eax
mov dword [esp + 0x38], eax
mov eax, 0xbfc6b29f
jmp 0x407260
cmp eax, 0x7dd9e34e
je 0x4085cc
cmp eax, 0x7fd09c8d
jne 0x407260
mov ecx, dword [esi + 0x30]
mov eax, 0x6649b6e9
mov dword [esp + 0x144], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407260
mov eax, 0xe1617eb2
jmp 0x407260
cmp eax, 0x9ab89aa3
je 0x408643
cmp eax, 0xa4d72898
jne 0x407260
mov dword [esp + 0x18], 0
mov eax, 0x417646fd
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x20], ecx
jmp 0x407260
cmp eax, 0xab36d3f3
je 0x408661
cmp eax, 0xacd465cd
jne 0x407260
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0xec796f0b
jmp 0x407260
cmp eax, 0xcb63b
je 0x4086cc
cmp eax, 0x12623b9
jne 0x407260
mov ecx, dword [esi + 0x44]
mov eax, 0xd0c9973a
mov dword [esp + 0x120], ecx
cmp ecx, 8
jae 0x407260
mov eax, 0x7dd9e34e
jmp 0x407260
cmp eax, 0x57df0b8
je 0x4086ee
cmp eax, 0x5df40b0
jne 0x407260
mov eax, 0x15cf0439
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x30], ecx
jmp 0x407260
cmp eax, 0xad34e5eb
jne 0x408aac
mov ecx, ebx
mov eax, 0x24f4783b
sub ecx, 1
mov dword [esp + 0x168], ecx
jb 0x408140
mov eax, 0x42f3224f
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x48], ecx
jmp 0x407260
mov eax, 0x6d3c7fbd
cmp dword [esp + 0x64], 0
jns 0x407254
mov eax, 0x52adcc0b
jmp 0x407254
mov ecx, esi
mov edx, 2
push 0
push 7
push 0x13
call fcn.00408ad0
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, 0x1d8975af
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x108], ecx
jmp 0x407260
mov ecx, dword [esp + 0x110]
lea eax, [ecx + 1]
mov dword [esp + 0xd0], eax
movzx eax, byte [esp + 2]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x7516e8ad
mov ecx, dword [esp + 0x154]
mov dword [esp + 0xa8], ecx
jmp 0x407260
mov eax, dword [esp + 0x2c]
dec eax
mov dword [esp + 0x58], eax
mov eax, 0xb66371d3
jmp 0x407260
movzx eax, byte [esi + 0x48]
mov edx, dword [esp + 0x12c]
lea ecx, [edx + 1]
mov dword [esi + 0x30], ecx
mov byte [edx], al
mov eax, 0xc83f81de
jmp 0x407260
cmp dword [esi + 0x44], 8
mov eax, 0x1f542b71
jae 0x407260
mov eax, 0xb971e1b5
jmp 0x407260
mov eax, dword [esp + 4]
lea ecx, [eax + 1]
mov eax, 0xc81b12a6
mov dword [esp + 0x18], ecx
cmp ecx, 6
je 0x408246
mov eax, 0x417646fd
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xac], ecx
jmp 0x407260
mov eax, 0x721a1f83
cmp dword [esp + 0xc], 3
jb 0x407260
mov eax, 0x3bbdf76
jmp 0x407260
mov eax, 0xb93bd8e6
cmp dword [esp + 4], 0
je 0x408291
mov eax, 0x64931fb3
mov edi, dword [esp + 8]
mov ecx, dword [esp + 4]
mov dword [esp + 0x9c], ecx
jmp 0x407260
mov ecx, dword [esi + 0x30]
mov eax, 0x1e0661f9
mov dword [esp + 0x128], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407260
mov eax, 0xb514737b
jmp 0x407260
movzx eax, byte [esi + 0x48]
mov ebp, dword [esp + 0x144]
lea ecx, [ebp + 1]
mov dword [esi + 0x30], ecx
mov byte [ebp], al
mov eax, 0xe1617eb2
jmp 0x407260
mov eax, 0x12fefe81
cmp dword [esp + 0xc4], 0x10
jae 0x4082f9
mov eax, 0x3be25216
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0xe4], ecx
jmp 0x407260
mov ebp, edi
mov edi, ebx
mov ebx, dword [esp + 0x104]
movzx edx, byte [esp + ebx + 0x16c]
movzx eax, word [esi + edx*2 + 0x8cd2]
mov ecx, dword [esi + 0x44]
shl eax, cl
mov dword [esp + 0xc4], 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 + 0xb8], eax
mov dword [esi + 0x44], edx
mov eax, 0xcb63b
jmp 0x407260
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x28]
add word [eax], cx
mov eax, 0x6277d4d0
mov edx, dword [esp + 8]
mov dword [esp + 0xe8], edx
mov dword [esp + 0xe0], ecx
jmp 0x407260
mov dword [esp + 0xb4], 0
mov eax, 0xe1701036
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x90], ecx
jmp 0x407260
mov eax, 0xe1701036
cmp dword [esp + 0xc], 0
je 0x4083b3
mov eax, 0x25761828
mov ecx, dword [esp + 8]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xb4], ecx
jmp 0x407260
movzx eax, byte [esp + 2]
mov ecx, dword [esp + 4]
add word [esi + eax*2 + 0x8612], cx
mov eax, 0x521f3a53
mov edx, dword [esp + 8]
mov dword [esp + 0x98], edx
mov dword [esp + 0x84], ecx
jmp 0x407260
movzx eax, byte [esi + 0x48]
mov ebp, dword [esp + 0x13c]
lea ecx, [ebp + 1]
mov dword [esi + 0x30], ecx
mov byte [ebp], al
mov eax, 0x7ba8e53e
jmp 0x407260
cmp dword [esi + 0x44], 8
mov eax, 0x9979f11
jae 0x407260
mov eax, 0xcc10a965
jmp 0x407260
mov ecx, dword [esp + 0x8c]
mov eax, 0x8f939317
sub ecx, 1
mov dword [esp + 0x160], ecx
jb 0x40844f
mov eax, 0x57df0b8
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0x138], ecx
mov dword [esp + 0x4c], ecx
jmp 0x407260
mov eax, 0xfc142a45
jmp 0x407260
mov eax, 0xdc5dd7e7
cmp dword [esp + 4], 3
jb 0x407260
mov eax, 0xec801f70
jmp 0x407260
mov eax, dword [esp + 0xd8]
movzx ecx, byte [esp + eax + 0x2ac]
mov eax, 0x5aae7691
mov byte [esp + 3], cl
test cl, cl
je 0x407260
mov eax, 0xd087aecf
jmp 0x407260
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0xdacc32e8
jmp 0x407260
mov eax, 0x15cf0439
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x30], ecx
jmp 0x407260
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x12623b9
jmp 0x407260
mov eax, 0x8b67d12f
cmp dword [esp + 0xc], 3
jb 0x407260
mov eax, 0xc9df469c
jmp 0x407260
inc word [esi + 0x8634]
mov ecx, dword [esp + 0x3c]
mov byte [esp + ecx + 0x16c], 0x11
mov eax, dword [esp + 0x1c]
add al, 0xfd
lea edx, [ecx + 2]
mov dword [esp + 0x48], edx
mov byte [esp + ecx + 0x16d], al
mov eax, 0x24f4783b
jmp 0x407260
mov eax, dword [esp + 0x34]
add eax, 0xfffffeff
mov ecx, dword [esp + 0x124]
shl eax, cl
or dword [esi + 0x48], eax
add dword [esi + 0x44], 5
mov eax, 0x12623b9
jmp 0x407260
mov ecx, dword [esp + 0x118]
lea eax, [ecx + 1]
mov dword [esp + 0xbc], eax
movzx eax, byte [esp + 2]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x932fc907
mov ecx, dword [esp + 0x15c]
mov dword [esp + 0x94], ecx
jmp 0x407260
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, 0xacd465cd
jmp 0x407260
inc word [esi + 0x8634]
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x16c], 0x11
mov eax, dword [esp + 0xc]
add al, 0xfd
jmp 0x4089e1
mov eax, dword [esp + 0x2c]
dec eax
mov ecx, dword [esp + 0x120]
shl eax, cl
or dword [esi + 0x48], eax
add dword [esi + 0x44], 5
mov eax, 0x18829f94
jmp 0x407260
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x81774f97
jmp 0x407260
mov eax, dword [esp + 0x158]
inc word [esi + eax*2 + 0x8612]
mov ecx, dword [esp + 0xa0]
lea eax, [ecx + 1]
mov dword [esp + 0x24], eax
movzx eax, byte [esp + 3]
mov byte [esp + ecx + 0x16c], al
mov eax, 0x417646fd
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0x18], ecx
jmp 0x407260
mov eax, 0x15cf0439
cmp dword [esp + 0xc], 0
je 0x408654
mov eax, 0x70e6c21b
mov ecx, dword [esp + 8]
mov dword [esp + 0x30], ecx
jmp 0x407260
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x34]
cmp byte [ecx + eax - 1], 0
mov eax, 0x4837db75
je 0x407260
mov eax, 0xc78db7f3
jmp 0x407260
mov eax, dword [esp + 0xd4]
mov edx, dword [esp + 4]
add word [esi + eax*2 + 0x8612], dx
mov eax, 0x932fc907
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0x94], edx
jmp 0x407260
mov eax, 0x1696ebab
cmp dword [esp + 0xc], 0xb
jb 0x407260
mov eax, 0x4e5437dc
jmp 0x407260
mov ecx, dword [esi + 0x44]
mov eax, 0xf7f05fa3
mov dword [esp + 0x11c], ecx
cmp ecx, 8
jae 0x407260
mov eax, 0x397f4d06
jmp 0x407260
mov eax, dword [esp + 0x138]
lea ecx, [eax + 1]
mov dword [esp + 0xb0], ecx
mov byte [esp + eax + 0x16c], 0
mov eax, 0xc22b7970
mov ecx, dword [esp + 0x160]
mov dword [esp + 0x8c], ecx
jmp 0x407260
mov ecx, dword [esi + 0x30]
mov eax, 0x733a1884
mov dword [esp + 0x134], ecx
cmp ecx, dword [esi + 0x34]
jb 0x407260
mov eax, 0xacd465cd
jmp 0x407260
mov eax, dword [esp + 0x88]
movzx eax, byte [eax + 0x442dea]
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, 0xec796f0b
jmp 0x407260
mov ecx, dword [esp + 0x70]
mov eax, 0xb6739a72
sub ecx, 1
mov dword [esp + 0xf8], ecx
jb 0x408789
mov eax, 0xf52c09cc
mov ecx, dword [esp + 0x74]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xf0], ecx
jmp 0x407260
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 + 0x4c], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x8f939317
jmp 0x407260
mov ebp, dword [esp + 0xb8]
movzx eax, byte [esp + ebp + 0x16c]
mov edx, dword [esp + 0xc4]
movsx edx, byte [edx + 0x443bc4]
mov ecx, dword [esp + 0x11c]
shl eax, cl
or dword [esi + 0x48], eax
lea eax, [ebp + 1]
mov dword [esp + 0x114], eax
add dword [esi + 0x44], edx
mov eax, 0xdacc32e8
jmp 0x407260
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, 0x985acfa2
jmp 0x407260
movzx eax, byte [esi + 0x48]
mov edx, dword [esp + 0x128]
lea ecx, [edx + 1]
mov dword [esi + 0x30], ecx
mov byte [edx], al
mov eax, 0xb514737b
jmp 0x407260
mov ecx, dword [esp + 0x84]
mov eax, 0x4cd9a4f0
sub ecx, 1
mov dword [esp + 0x100], ecx
jb 0x408869
mov eax, 0x2ad326a7
mov ecx, dword [esp + 0x98]
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x6c], ecx
jmp 0x407260
mov eax, dword [esp + 0xfc]
lea ecx, [eax + 1]
mov dword [esp + 0x98], ecx
movzx ecx, byte [esp + 2]
mov byte [esp + eax + 0x16c], cl
mov eax, 0x521f3a53
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x84], ecx
jmp 0x407260
mov ecx, dword [esp + 0xe0]
mov eax, 0x5df40b0
sub ecx, 1
mov dword [esp + 0x148], ecx
jb 0x4088d2
mov eax, 0x66b59fd2
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x10c], ecx
jmp 0x407260
mov eax, dword [esp + 0x44]
dec eax
mov dword [esp + 0x64], eax
mov eax, 0xafd25790
jmp 0x407260
mov eax, 0xfbae9de0
mov ecx, dword [esp + 0x50]
cmp ecx, dword [esp + 0x164]
jb 0x408913
mov eax, 0x99d5dcb6
movzx ecx, byte [esp + 0x13]
mov byte [esp + 2], cl
mov ecx, dword [esp + 0x78]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0xd8], ecx
jmp 0x407260
cmp dword [esi + 0x44], 8
mov eax, 0x875ceb6f
jae 0x407260
mov eax, 0x8dc5b324
jmp 0x407260
mov eax, 0x67459029
mov ecx, dword [esp + 0x108]
cmp dword [esp + 0x40], ecx
jb 0x408977
mov eax, 0xafb0c6c9
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x104], ecx
jmp 0x407260
mov eax, 0x46294fe3
cmp dword [esp + 0xc], 0xb
jb 0x407260
mov eax, 0xcb27a834
jmp 0x407260
movzx eax, byte [esp + 2]
mov ecx, dword [esp + 4]
add word [esi + eax*2 + 0x8612], cx
mov eax, 0x1deb61c9
mov edx, dword [esp + 8]
mov dword [esp + 0x74], edx
mov dword [esp + 0x70], ecx
jmp 0x407260
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 + 0x5c], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x5df40b0
jmp 0x407260
shr dword [esi + 0x48], 8
add dword [esi + 0x44], 0xfffffff8
mov eax, 0x1d8975af
jmp 0x407260
mov eax, dword [esp + 0xc]
lea ecx, [eax + 1]
mov eax, 0xb49f2a99
mov dword [esp + 0x1c], ecx
cmp ecx, 0x8a
je 0x408a28
mov eax, 0x417646fd
mov dword [esp + 0x24], edi
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x150], ecx
mov dword [esp + 0x3c], edi
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], ecx
jmp 0x407260
mov eax, 0x4397a0c8
cmp dword [esp + 0x1c], 0xb
jb 0x407260
mov eax, 0x60bea07f
jmp 0x407260
mov dword [esp + 0x64], 0x12
mov eax, 0xafd25790
jmp 0x407260
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 + 0x6c], ecx
mov byte [esp + edx + 0x16d], al
mov eax, 0x4cd9a4f0
jmp 0x407260
cmp eax, 0xafb0c6c9
jne 0x407260
add esp, 0x3ec
pop esi
pop edi
pop ebx
pop ebp
ret