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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x25c
push ebx
push esi
push edi
mov dword [esp + 0x168], edx
mov dword [esp + 0x144], ecx
call fcn.004198cb
mov dword [esp + 0xc], 0x1f66
xor eax, eax
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x1c], 0xfffffff9
mov dword [esp + 0x18], 0x718b2f10
mov dword [esp + 0x10], eax
jmp 0x419eb1
mov ecx, dword [esp + 0x10]
mov dword [esp + ecx*4 + 0x1f0], 0x7d214c40
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 4
jl 0x419e9e
mov edi, dword [0xaab328]
mov byte [esp + 0x17], al
cmp byte [esp + 0x17], al
je 0x419ed9
push eax
push 0x1242
call edi
push eax
call dword [0xaab33c]
xor eax, eax
mov ecx, dword [esp + 0x1c]
xor esi, esi
dec dword [esp + 0x1c]
inc esi
cmp ecx, 0x3edb
mov ecx, esi
push 3
cmove ecx, eax
pop ebx
cmp dword [esp + 0xc], ecx
jg 0x419f6e
cmp dword [esp + 0x1f4], eax
jne 0x419f6e
mov dword [esp + 0xd0], 0x5af
mov dword [esp + 0xa4], 0x5c1f4aca
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0xa4], ecx
mov ecx, dword [esp + 0x1fc]
mov dword [esp + 0xa4], ecx
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x18]
sub edx, ecx
mov ecx, dword [esp + 0xa4]
add esi, edx
xor edx, edx
cmp ecx, esi
setl dl
xor ecx, ecx
cmp edx, 0xc141
setle cl
xor esi, esi
mov dword [esp + 0x1f4], ecx
inc esi
jmp 0x41a039
mov dword [esp + 0x78], 0x8eb16e2c
mov byte [esp + 0x17], al
cmp byte [esp + 0x17], 0
je 0x419f8a
push eax
call dword [0xaab318]
xor eax, eax
mov dword [esp + 0x10], 0xfffffff8
jmp 0x41a02e
mov dword [esp + 0x84], 0xfffffff7
mov dword [esp + 0x138], 0xfffffff6
mov dword [esp + 0xc], eax
jmp 0x41a024
mov dword [esp + 0x1c], 6
mov edx, 0x8a87
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x78]
sub edx, ecx
mov ecx, dword [esp + 0x78]
add ecx, edx
mov edx, dword [esp + 0x84]
imul ecx, ecx, 0x2bc9
add edx, ecx
je 0x419ff3
mov ecx, eax
cmp dword [esp + 0x84], eax
je 0x419ff5
mov ecx, esi
cmp dword [esp + 0x1c], ecx
jge 0x419fff
mov ecx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x78]
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x1f0], esi
mov ecx, dword [esp + 0x138]
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x78], ecx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ebx
jle 0x419fb3
dec dword [esp + 0x10]
cmp dword [esp + 0x10], 0xfffffff2
jg 0x419f97
mov dword [esp + 0x98], 0x16542076
mov dword [esp + 0x10], 0xfffffffe
mov dword [esp + 0x1c], 0x7c57f39c
mov dword [esp + 0x10], 0xfffffffd
cmp dword [esp + 0x10], 0xa
jle 0x41a1d6
mov dword [esp + 0x3c], esi
mov dword [esp + 0xc], eax
jmp 0x41a080
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x104], eax
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ebx
jl 0x41a071
mov edx, dword [esp + 0x10]
xor ebx, ebx
mov ecx, dword [esp + 0x10]
cmp edx, ecx
mov ecx, dword [esp + 0x3c]
setle bl
xor edx, edx
cmp ecx, ebx
mov ecx, dword [esp + 0x104]
setle dl
mov dword [esp + 0x20], edx
xor edx, edx
cmp dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x104]
setne dl
imul ecx, edx
cmp ecx, 0xfffffffb
jl 0x41a18c
mov dword [esp + 0x1c], 0xffffffff
mov dword [esp + 0xc], 9
mov dword [esp + 0xc], eax
jmp 0x41a0ec
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x158], esi
inc dword [esp + 0xc]
cmp dword [esp + 0xc], esi
jl 0x41a0dd
cmp dword [esp + 0x104], eax
je 0x41a156
cmp dword [esp + 0x10], eax
je 0x41a14b
mov ecx, dword [esp + 0x10c]
xor ebx, ebx
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
cmp edx, ecx
mov ecx, dword [esp + 0x1c]
setle bl
xor edx, edx
cmp ebx, esi
setg dl
sub ecx, dword [esp + 0x10]
imul edx, ecx
dec dword [esp + 0x1c]
test edx, edx
je 0x41a13d
mov ecx, esi
cmp dword [esp + 0x3c], eax
jne 0x41a13f
mov ecx, eax
mov dword [esp + 0x1c], ecx
mov ecx, esi
cmp dword [esp + 0x1c], eax
jne 0x41a14d
mov ecx, eax
cmp ecx, dword [esp + 0x158]
jl 0x41a158
mov esi, eax
mov ecx, dword [esp + 0x104]
xor edx, edx
cmp esi, ecx
mov ecx, dword [esp + 0x10]
setle dl
xor ebx, ebx
cmp edx, 0x9c25
setg bl
xor edx, edx
imul ecx, ebx
cmp ecx, 0xfffffffa
setne dl
xor esi, esi
mov dword [esp + 0x104], edx
inc esi
jmp 0x41a19a
mov dword [esp + 0x20], 0x46b51f0e
cmp dword [esp + 0x20], eax
jne 0x41a1d3
mov dword [esp + 0x3c], eax
jmp 0x41a1ba
mov byte [esp + 0x43], al
cmp byte [esp + 0x43], 0
je 0x41a1b6
call edi
push eax
call dword [0xaab300]
xor eax, eax
inc dword [esp + 0x3c]
cmp dword [esp + 0x3c], 9
jge 0x41a1a0
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 0xa
push 3
pop ebx
jg 0x41a067
push 3
pop ebx
mov dword [esp + 0x38], 0xfffffffa
mov dword [esp + 0x10], 0xfffffffd
mov dword [esp + 0x24], 0xd898
mov dword [esp + 0xc], eax
jmp 0x41a207
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x23c], 0x3dd3
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ebx
jl 0x41a1f4
push 2
mov dword [esp + 0x14], eax
pop edi
jmp 0x41a241
mov dword [esp + 0xc], 0xa888adae
mov dword [esp + 0xc], eax
jmp 0x41a237
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x23c], 0xffffffff
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ebx
jl 0x41a224
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jle 0x41a216
mov dword [esp + 0x7c], 0xe19f23e5
mov dword [esp + 0xc], eax
jmp 0x41a268
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0xf4], 0x971c1ec2
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 4
jl 0x41a255
mov dword [esp + 0x80], 0x4a8b108f
lea ecx, [esp + 0x1d8]
push esi
call fcn.00413b3c
mov dword [esp + 0x11c], 5
lea ecx, [esp + 0x1b4]
mov dword [esp + 0xc8], 0xb5411457
push edi
call fcn.00413b3c
xor eax, eax
mov dword [esp + 0x30], eax
jmp 0x41a2c4
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x1d8]
mov dword [ecx + edx*4], esi
inc dword [esp + 0x30]
cmp dword [esp + 0x30], esi
jl 0x41a2b2
mov dword [esp + 0x30], eax
jmp 0x41a2e6
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x1b4]
mov dword [ecx + edx*4], 0x81438367
inc dword [esp + 0x30]
cmp dword [esp + 0x30], edi
jl 0x41a2d0
mov edx, esi
cmp dword [esp + 0x80], eax
jne 0x41a2f9
mov edx, eax
mov eax, dword [esp + 0x80]
xor ecx, ecx
add eax, 0x79c6
cmp eax, edi
setne cl
xor eax, eax
cmp edx, ecx
sete al
imul ecx, eax, 0x54d
mov eax, dword [esp + 0x1d8]
dec ecx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
mov dword [eax], ecx
mov eax, dword [esp + 0x11c]
imul eax, dword [esp + 0x80]
imul eax, ecx
mov dword [esp + 0xc8], eax
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0xc8]
inc ecx
cmp ecx, eax
mov eax, dword [esp + 0x1b4]
lea ecx, [esp + 0x1b4]
setl dl
mov dword [eax + 4], edx
call fcn.00413c0e
lea ecx, [esp + 0x1d8]
call fcn.00413c0e
mov ecx, dword [esp + 0xf8]
xor edx, edx
mov eax, dword [esp + 0x98]
cmp ecx, eax
setl dl
xor eax, eax
cmp edx, 5
setge al
xor edx, edx
imul ecx, eax, 0xffff
mov eax, dword [esp + 0xf8]
add eax, 9
add eax, ecx
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x100]
mov eax, dword [esp + 0x38]
cmp eax, ecx
mov eax, dword [esp + 0xf8]
setle dl
xor ecx, ecx
cmp eax, edx
setl cl
xor eax, eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0xc], 0x90c4d8e5
mov dword [esp + 0xc], eax
jmp 0x41a3f0
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0xb4], ebx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], esi
jl 0x41a3e1
mov dword [esp + 0xc], eax
cmp dword [esp + 0xc], eax
jl 0x41a4d0
mov edi, dword [0xaab344]
mov dword [esp + 0x10], eax
jmp 0x41a423
mov ecx, dword [esp + 0x10]
mov dword [esp + ecx*4 + 0xa0], 0xd711e7bf
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x41a410
mov ecx, dword [esp + 0xc]
cmp dword [esp + ecx*4 + 0xb4], eax
je 0x41a43c
cmp dword [esp + 0xc], eax
jne 0x41a43e
mov esi, eax
mov ecx, dword [esp + 0xc]
xor edx, edx
mov ecx, dword [esp + ecx*4 + 0xb4]
test ecx, ecx
sete dl
cmp esi, edx
jg 0x41a461
cmp dword [esp + 0xc], eax
je 0x41a461
xor esi, esi
inc esi
mov edx, esi
jmp 0x41a466
xor esi, esi
mov edx, eax
inc esi
mov ecx, dword [esp + 0xc]
mov ecx, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa0]
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0xb4], edx
mov dword [esp + 0xa0], 0xffffffff
mov byte [esp + 0x17], al
cmp edx, 0xffffffff
jl 0x41a4a7
cmp byte [esp + 0x17], 0
je 0x41a4c3
push eax
call dword [0xaab148]
jmp 0x41a4c1
cmp byte [esp + 0x17], 0
je 0x41a4b3
push eax
call edi
xor eax, eax
mov byte [esp + 0x17], al
cmp byte [esp + 0x17], 0
je 0x41a4c3
push eax
call edi
xor eax, eax
dec dword [esp + 0xc]
jns 0x41a40a
push 2
pop edi
mov dword [esp + 0x38], eax
jmp 0x41b51b
push 4
lea ecx, [esp + 0x1ac]
call fcn.00413b3c
mov dword [esp + 0x50], esi
mov eax, 0xffff
mov dword [esp + 0x164], eax
push 0xfffffffffffffff6
pop edx
mov dword [esp + 0x14c], edx
mov dword [esp + 0x15c], 0x1fbb9cf7
mov dword [esp + 0x58], 0xeded
mov dword [esp + 0x218], 0xa1e1cf2b
mov dword [esp + 0x6c], 0
jmp 0x41a53b
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x1a8]
mov dword [eax + ecx*4], edx
inc dword [esp + 0x6c]
cmp dword [esp + 0x6c], 4
jl 0x41a529
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x168]
push eax
lea eax, [esp + 0x1b0]
push eax
lea eax, [esp + 0x158]
push eax
lea edx, [esp + 0x16c]
lea ecx, [esp + 0x60]
call fcn.00412fa1
add esp, 0x10
mov dword [esp + 0x50], 5
jmp 0x41a5da
mov dword [esp + 0x214], 0x6f9f1111
mov dword [esp + 0x200], 0
mov dword [esp + 0x58], 0
jmp 0x41a5cf
mov dword [esp + 0x13c], 0xfffffffa
mov dword [esp + 0xbc], 0xffffffff
mov dword [esp + 0x140], ebx
mov dword [esp + 0x13c], 0xce40
mov dword [esp + 0x140], esi
dec dword [esp + 0x58]
cmp dword [esp + 0x58], 0xfffffff1
jl 0x41a59c
inc dword [esp + 0x50]
cmp dword [esp + 0x50], 8
jne 0x41a57c
lea ecx, [esp + 0x1a8]
call fcn.00413c0e
mov dword [esp + 0x34], 0x548aab56
mov dword [esp + 0x148], 0xb3ae3556
mov dword [esp + 0x24], 0xcd66a075
mov dword [esp + 0x24], 0xde661fbc
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x24], 0x6d6dbc1c
mov dword [esp + 0x24], 0xb79ae4f7
mov dword [esp + 0x24], 0x722abac8
mov dword [esp + 0xc], 0
jmp 0x41a64d
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x248], 0xfffffff8
inc dword [esp + 0xc]
cmp dword [esp + 0xc], edi
jl 0x41a63a
lea ecx, [esp + 0x148]
call fcn.00419bae
mov dword [esp + 0x9c], 0x69ff4caa
lea ecx, [esp + 0x120]
mov dword [esp + 0xc], 0x124f
push ebx
call fcn.00413b3c
mov dword [esp + 0xa8], 0xfffffff9
xor eax, eax
mov dword [esp + 0x44], eax
mov dword [esp + 0xb0], 0x3847d228
mov dword [esp + 0x150], 0x4bd1a6f3
mov dword [esp + 0x68], eax
jmp 0x41a6c2
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x120]
mov dword [ecx + edx*4], 0x768c0aa3
inc dword [esp + 0x68]
cmp dword [esp + 0x68], ebx
jl 0x41a6ac
mov byte [esp + 0x17], al
cmp byte [esp + 0x17], al
je 0x41a6e5
push eax
push 0x1a93
push 0x7ef
call dword [0xaab154]
xor eax, eax
mov ecx, dword [esp + 0xc]
mov esi, dword [esp + 0x120]
mov dword [esi + 4], ecx
test ecx, ecx
je 0x41a7dc
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x120]
mov dword [ecx + 8], edx
test edx, edx
jne 0x41a74f
mov ecx, dword [esi + 4]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0xc]
cmp dword [esi + 4], ecx
mov esi, dword [esp + 0xa8]
mov ecx, dword [esp + 0xc]
setle dl
sub esi, edx
neg esi
sbb esi, esi
xor ebx, ebx
inc esi
cmp esi, ecx
mov ecx, dword [esp + 0xc]
setg bl
xor edx, edx
cmp ebx, ecx
setge dl
cmp edx, dword [esp + 0xc]
jge 0x41a74f
mov esi, eax
jmp 0x41a752
xor esi, esi
inc esi
mov ecx, dword [esp + 0xc]
xor edx, edx
cmp esi, ecx
mov ecx, 0xffff
setge dl
sub edx, dword [esp + 0xc]
neg edx
sbb edx, edx
inc edx
cmp ecx, edx
sbb ecx, ecx
xor ebx, ebx
neg ecx
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0xb0], ecx
mov edx, dword [esp + 0xb0]
mov ecx, dword [esp + 0xc]
cmp edx, ecx
setg bl
cmp ebx, dword [esp + 0xc]
jne 0x41a7d9
lea eax, [esp + 0xb0]
mov dword [esp + 0x154], 0xc21d
push eax
lea eax, [esp + 0x124]
push eax
lea eax, [esp + 0x158]
push eax
lea edx, [esp + 0x160]
lea ecx, [esp + 0xb4]
call fcn.00419c4a
add esp, 0xc
push 3
pop ebx
jmp 0x41a894
push 3
pop ebx
push dword [esp + 0xbc]
movdqa xmm0, xmmword [0xaa1cc0]
lea ecx, [esp + 0x240]
push ecx
lea ecx, [esp + 0x234]
mov dword [esp + 0x2c], 0x548aab56
push ecx
mov dword [esp + 0x30], 0xae215169
lea ecx, [esp + 0x178]
push eax
movdqu xmmword [esp + 0x23c], xmm0
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], eax
call fcn.00415097
mov dword [esp + 0x24], 0xbd47
mov dword [esp + 0xd8], 0x6862eae
inc dword [esp + 0xd8]
mov dword [esp + 0x44], 0xfffffff3
cmp dword [esp + 0x44], 7
jl 0x41a888
xor eax, eax
mov byte [esp + 0x17], al
cmp byte [esp + 0x17], 0
je 0x41a87d
push eax
push 0x262b
push eax
push eax
push eax
call dword [0xaab168]
xor eax, eax
inc dword [esp + 0x44]
cmp dword [esp + 0x44], 7
jge 0x41a861
lea ecx, [esp + 0x16c]
call fcn.00413c0e
lea ecx, [esp + 0x120]
call fcn.00413c0e
mov dword [esp + 0x94], 0x63cfebda
xor eax, eax
mov dword [esp + 0x24], 0xfffd
mov dword [esp + 0x20], 0xc844fc37
mov dword [esp + 0xc], eax
jmp 0x41a8d2
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x88], eax
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ebx
jl 0x41a8c3
mov byte [esp + 0x4e], al
cmp byte [esp + 0x4e], al
je 0x41a8ef
push 0x1436
push eax
push eax
call dword [0xaab14c]
mov dword [esp + 0x90], 0xfffffffb
cmp dword [esp + 0x90], 9
jl 0x41aae5
mov dword [esp + 0x10], 0xbe44
lea ecx, [esp + 0x184]
push 4
call fcn.00413b3c
xor ebx, ebx
mov dword [esp + 0x1c], 0x84515fdc
inc ebx
xor eax, eax
mov dword [esp + 0x1c], ebx
mov dword [esp + 0xc], eax
jmp 0x41a947
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x184]
mov dword [ecx + edx*4], ebx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 4
jl 0x41a935
mov esi, eax
cmp dword [esp + 0x90], eax
je 0x41a95b
mov esi, ebx
mov edi, dword [esp + 0x184]
xor edx, edx
mov dword [edi + 4], eax
mov dword [esp + 0x1c], 0xffffffff
mov ecx, dword [esp + 0x88]
cmp esi, ecx
mov ecx, dword [esp + 0x90]
setl dl
xor ebx, ebx
cmp edx, ecx
mov ecx, dword [esp + 0x1c]
setg bl
xor edx, edx
test ecx, ecx
sets dl
xor ecx, ecx
cmp edx, ebx
setge cl
xor edx, edx
cmp ecx, 0xbdebf889
mov ecx, dword [esp + 0x90]
setne dl
xor ebx, ebx
neg edx
cmp ecx, edx
mov ecx, dword [esp + 0x10]
setle bl
xor edx, edx
neg ecx
cmp ecx, ebx
setl dl
mov dword [esp + 0x1c], edx
cmp dword [esp + 0x1c], eax
je 0x41aa56
mov dword [esp + 0xc], 5
mov dword [esp + 0x18], 0xd6b22149
cmp dword [edi + 4], eax
je 0x41aa50
mov esi, dword [esp + 0x184]
cmp dword [esi + 0xc], eax
je 0x41aa50
mov ecx, dword [esp + 0x10]
xor edx, edx
mov ecx, dword [esp + 0x1c]
cmp ecx, 0x5a26cdee
mov ecx, dword [esp + 0x10]
setne dl
xor ebx, ebx
cmp edx, ecx
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x90]
setl bl
add edx, 4
add ebx, dword [esi + 0xc]
add edx, ebx
xor ebx, ebx
cmp edx, ecx
setne bl
mov dword [esp + 0xc], ebx
mov ecx, dword [esp + 0xc]
mov ecx, dword [esp + 0x8c]
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x18], eax
je 0x41aa4d
mov eax, dword [esp + 0x90]
xor eax, eax
inc eax
mov dword [esp + 0x20], eax
jmp 0x41aabe
mov byte [esp + 0x4b], al
cmp byte [esp + 0x4b], al
je 0x41aa94
push 0x239f
push 0x3de
push 0x2673
push 0x1775
push 0x713
push 0x1c32
call dword [0xaab328]
push eax
call dword [0xaab314]
push eax
call dword [0xaab060]
xor eax, eax
mov byte [esp + 0x4d], al
cmp byte [esp + 0x4d], 0
je 0x41aabe
push eax
push 0x1796
push 0x670
call dword [0xaab328]
push eax
call dword [0xaab314]
push eax
call dword [0xaab05c]
lea ecx, [esp + 0x184]
call fcn.00413c0e
inc dword [esp + 0x90]
cmp dword [esp + 0x90], 9
jge 0x41a908
push 3
pop ebx
push 2
pop edi
xor esi, esi
mov dword [esp + 0x54], 0
inc esi
mov dword [esp + 0x10], 4
mov dword [esp + 0x18], 0xe9ab5c29
lea ecx, [esp + 0x190]
push esi
call fcn.00413b3c
mov dword [esp + 0x20], 0x69cd17cd
xor eax, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x20], 0xfffffffc
mov dword [esp + 0x20], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x20], 0x8a064f57
mov dword [esp + 0x20], 0xf0d30663
mov dword [esp + 0xcc], eax
mov dword [esp + 0x2c], eax
jmp 0x41ab5b
mov ecx, dword [esp + 0x2c]
mov dword [esp + ecx*4 + 0xe8], 0xffffffff
inc dword [esp + 0x2c]
cmp dword [esp + 0x2c], ebx
jl 0x41ab48
mov dword [esp + 0x2c], eax
jmp 0x41ab7d
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x190]
mov dword [ecx + edx*4], 0x24b969b4
inc dword [esp + 0x2c]
cmp dword [esp + 0x2c], esi
jl 0x41ab67
mov dword [esp + 0x10], edi
cmp dword [esp + 0x10], eax
jl 0x41ac4f
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x18], 0x734cb441
mov ecx, dword [esp + 0x10]
cmp dword [esp + ecx*4 + 0xe8], 0xffffffff
jbe 0x41abc9
mov ecx, dword [esp + 0x10]
xor edx, edx
mov ecx, dword [esp + ecx*4 + 0xe8]
test ecx, ecx
setle dl
mov dword [esp + 0x18], edx
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
xor edx, edx
mov ecx, dword [esp + ecx*4 + 0xe8]
mov ecx, dword [esp + 0x10]
mov ecx, dword [esp + ecx*4 + 0xe8]
cmp ecx, 0xfffffffd
sete dl
mov dword [esp + 0x18], edx
xor edx, edx
mov ecx, dword [esp + 0x10]
mov ecx, dword [esp + ecx*4 + 0xe8]
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
cmp ecx, esi
setge dl
neg edx
jne 0x41ac11
cmp dword [esp + 0x10], eax
jne 0x41ac11
mov esi, eax
mov ecx, dword [esp + 0xf0]
xor edx, edx
cmp esi, ecx
push 1
setne dl
mov dword [esp + 0x1c], edx
mov ecx, dword [esp + 0x14]
pop esi
mov ecx, dword [esp + ecx*4 + 0xe8]
mov edx, dword [esp + 0x18]
sub edx, ecx
mov ecx, dword [esp + 0x190]
neg edx
sbb edx, edx
inc edx
mov dword [ecx], edx
dec dword [esp + 0x10]
jns 0x41ab91
dec dword [esp + 0xcc]
lea ecx, [esp + 0x190]
call fcn.00413c0e
xor eax, eax
cmp dword [esp + 0x100], eax
je 0x41ae65
mov ecx, dword [esp + 0x34]
mov ecx, dword [esp + 0x9c]
mov ecx, dword [esp + 0x34]
mov ecx, dword [esp + 0xf8]
mov ecx, dword [esp + 0x34]
mov ecx, dword [esp + 0x34]
mov ecx, dword [esp + 0x9c]
mov ecx, dword [esp + 0xfc]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
mov ecx, dword [esp + 0x94]
mov ecx, dword [esp + 0x100]
mov ecx, dword [esp + 0x24]
mov ecx, dword [esp + 0x34]
cmp dword [esp + 0x100], 0xffffffff
je 0x41ae65
mov dword [esp + 0xac], 0xeae26468
lea ecx, [esp + 0x178]
push ebx
call fcn.00413b3c
mov dword [esp + 0xd4], esi
mov dword [esp + 0xb8], 0xa4aeca2a
call fcn.004199c1
xor eax, eax
mov dword [esp + 0x70], eax
jmp 0x41ad1e
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x178]
mov dword [ecx + edx*4], 0x81ffde63
inc dword [esp + 0x70]
cmp dword [esp + 0x70], ebx
jl 0x41ad08
mov dword [esp + 0x64], 0x8ade19d2
mov dword [esp + 0xc], eax
jmp 0x41ad41
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x250], eax
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ebx
jl 0x41ad32
mov byte [esp + 0x17], al
cmp byte [esp + 0x17], al
je 0x41ad5b
push eax
push eax
call dword [0xaab174]
xor eax, eax
mov dword [esp + 0x64], eax
jmp 0x41ad71
mov dword [esp + 0x18], 0xfffffffd
inc dword [esp + 0x18]
inc dword [esp + 0x64]
cmp dword [esp + 0x64], edi
jle 0x41ad61
push eax
lea eax, [esp + 0x17c]
push eax
lea edx, [esp + 0xb4]
lea ecx, [esp + 0x3c]
call fcn.0041c5ad
pop ecx
pop ecx
call fcn.00419d93
call fcn.00419a4d
mov eax, dword [esp + 0x98]
mov eax, dword [esp + 0xac]
cmp eax, dword [esp + 0xac]
je 0x41adc1
cmp dword [esp + 0x98], 0
jne 0x41adc1
xor eax, eax
jmp 0x41adc3
mov eax, esi
mov ecx, dword [esp + 0x178]
xor edx, edx
cmp eax, dword [ecx + 8]
setne dl
xor eax, eax
sub edx, 0x61d02db7
cmp dword [ecx + 4], edx
setle al
xor ecx, ecx
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0xd4]
imul eax, dword [esp + 0x98]
cmp eax, esi
mov eax, dword [esp + 0x9c]
setl cl
xor edx, edx
cmp ecx, 0x236c
setg dl
xor ecx, ecx
cmp eax, edx
setge cl
xor edx, edx
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
cmp ecx, eax
setl dl
xor ecx, ecx
mov dword [esp + 0xb8], edx
mov eax, dword [esp + 0xb8]
sub eax, dword [esp + 0x7c]
cmp eax, 0xa000
setl cl
sub ecx, 0x71708c99
neg ecx
sbb ecx, ecx
inc ecx
mov dword [esp + 0x54], ecx
lea ecx, [esp + 0x178]
call fcn.00413c0e
jmp 0x41b0e0
push dword [esp + 0xbc]
movdqa xmm0, xmmword [0xaa1d20]
lea ecx, [esp + 0x230]
push ecx
lea ecx, [esp + 0x224]
mov dword [esp + 0x118], eax
push ecx
push eax
lea ecx, [esp + 0x120]
mov dword [esp + 0x124], eax
movdqu xmmword [esp + 0x22c], xmm0
mov dword [esp + 0x128], eax
call fcn.00415097
mov dword [esp + 0x18], 0
lea ecx, [esp + 0x1cc]
push esi
call fcn.00413b3c
xor eax, eax
mov dword [esp + 0x24], 0x59c3
mov dword [esp + 0x10], eax
jmp 0x41aee4
mov ecx, dword [esp + 0x10]
mov dword [esp + ecx*4 + 0x74], 0xfffffffe
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x41aed4
mov dword [esp + 0x10], eax
jmp 0x41af03
mov ecx, dword [esp + 0x10]
mov dword [esp + ecx*4 + 0xc0], 0xfffffffe
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jl 0x41aef0
mov dword [esp + 0x10], eax
jmp 0x41af25
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1cc]
mov dword [ecx + edx*4], 0x36fc75df
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x41af0f
mov dword [esp + 0x10], eax
jmp 0x41af40
mov ecx, dword [esp + 0x10]
mov dword [esp + ecx*4 + 0x20c], esi
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jl 0x41af31
mov dword [esp + 0x74], 0xfffffff9
mov dword [esp + 0xc4], eax
cmp dword [esp + 0xc4], 0xfffffff1
jg 0x41b0aa
mov esi, dword [esp + 0x110]
push 0xfffffffffffffff8
pop ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x18], 0xfffffff6
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x10], eax
jmp 0x41af96
mov ecx, dword [esp + 0x10]
mov dword [esp + ecx*4 + 0x204], 0x9c4ad153
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jl 0x41af83
mov byte [esp + 0x4f], al
cmp byte [esp + 0x4f], 0
je 0x41afb1
push eax
push eax
call dword [0xaab150]
xor eax, eax
mov ecx, dword [esp + 0xc]
xor edx, edx
cmp dword [esi + 8], ecx
mov ecx, dword [esp + 0x74]
sete dl
xor ebx, ebx
cmp edx, ecx
mov ecx, dword [esp + 0xc]
setne bl
xor edx, edx
cmp ebx, ecx
setl dl
cmp edx, dword [esp + 0x74]
jl 0x41afe3
cmp dword [esi + 8], eax
je 0x41afe3
xor edx, edx
inc edx
jmp 0x41afe5
mov edx, eax
mov ecx, dword [esp + 0xc]
add edx, 0xfffffff9
xor ebx, ebx
cmp ecx, edx
mov ecx, dword [esp + 0xc]
setle bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [esp + 0x74]
setl dl
xor ebx, ebx
imul edx, ecx
mov ecx, dword [esp + 0xc]
cmp edx, ecx
mov ecx, dword [esp + 0xc]
setl bl
xor edx, edx
cmp ebx, ecx
setne dl
xor ebx, ebx
sub edx, dword [esp + 0xc]
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x18]
sub edx, dword [esi + 8]
mov ecx, dword [esp + 0x1c]
cmp edx, ecx
mov ecx, dword [esp + 0x110]
setge bl
xor edx, edx
cmp ebx, dword [ecx]
mov ecx, dword [esp + 0xc]
setg dl
add edx, ecx
mov ecx, dword [esp + 0x1cc]
mov dword [ecx], edx
je 0x41b05f
cmp dword [esp + 0x74], eax
je 0x41b05f
xor edx, edx
inc edx
jmp 0x41b061
mov edx, eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x18]
imul ecx, edx
test ecx, ecx
je 0x41b07f
cmp dword [esp + 0x1c], eax
je 0x41b07f
xor ecx, ecx
inc ecx
jmp 0x41b081
mov ecx, eax
mov dword [esp + 0x204], ecx
mov dword [esp + 0x20c], ecx
dec dword [esp + 0xc4]
cmp dword [esp + 0xc4], 0xfffffff1
jle 0x41af6a
xor esi, esi
push 3
inc esi
pop ebx
lea ecx, [esp + 0x1cc]
call fcn.00413c0e
lea ecx, [esp + 0x110]
call fcn.00413c0e
push 0
lea eax, [esp + 0x4c]
mov byte [esp + 0x4c], 0
push eax
push 0x3c7c
push 0x3f57
call fcn.0041d2dd
add esp, 0x10
mov dword [esp + 0x54], 0xffffffe3
jmp 0x41b50c
push ebx
lea ecx, [esp + 0x1c4]
call fcn.00413b3c
mov dword [esp + 0x10], 0x24f01c08
xor eax, eax
mov dword [esp + 0xc], 0x9200
mov dword [esp + 0xc], eax
jmp 0x41b125
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x12c], 0x9a3d
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ebx
jl 0x41b112
cmp dword [esp + 0x10], eax
je 0x41b1fb
mov dword [esp + 0x24], 0xfffffff6
mov dword [esp + 0x94], 0xfffffffd
mov dword [esp + 0x18], 0x67356a0b
mov dword [esp + 0x1c], 8
mov dword [esp + 0x94], 0x42bb
mov dword [esp + 0x20], 0xcaeaba4a
mov dword [esp + 0xc], eax
jmp 0x41b184
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x160], 0xffff
inc dword [esp + 0xc]
cmp dword [esp + 0xc], esi
jl 0x41b171
mov dword [esp + 0x10], eax
jmp 0x41b1a1
mov ecx, dword [esp + 0x10]
cmp dword [esp + ecx*4 + 0x12c], eax
jne 0x41b1a7
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jle 0x41b190
mov ecx, dword [esp + 0x10]
xor edx, edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x24]
cmp ecx, esi
setl dl
add edx, dword [esp + 0x10]
jne 0x41b1c4
mov ecx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x160]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ecx, dword [esp + 0x134]
mov ecx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x20], ecx
jmp 0x41b237
mov dword [esp + 0x10], eax
jmp 0x41b231
mov byte [esp + 0x49], al
cmp byte [esp + 0x49], 0
je 0x41b22d
push eax
push 0x216b
push 0x943
call dword [0xaab328]
push eax
call dword [0xaab314]
push eax
call dword [0xaab040]
xor eax, eax
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x41b201
mov dword [esp + 0xc], eax
jmp 0x41b274
mov dword [esp + 0x10], eax
jmp 0x41b254
mov ecx, dword [esp + 0xc]
cmp dword [esp + ecx*4 + 0x12c], eax
jne 0x41b25a
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jle 0x41b243
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + ecx*4 + 0x12c]
mov ecx, dword [esp + 0xc]
mov dword [esp + ecx*4 + 0x12c], edx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], edi
jle 0x41b23d
mov dword [esp + 0x5c], eax
jmp 0x41b296
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x1c0]
mov dword [eax + ecx*4], 0xbbcb
inc dword [esp + 0x5c]
cmp dword [esp + 0x5c], ebx
jl 0x41b280
push ebx
lea ecx, [esp + 0x1a0]
call fcn.00413b3c
xor eax, eax
mov dword [esp + 0x28], eax
jmp 0x41b2c7
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x19c]
mov dword [ecx + edx*4], 0x41b3
inc dword [esp + 0x28]
cmp dword [esp + 0x28], ebx
jl 0x41b2b1
mov dword [esp + 0x28], eax
jmp 0x41b2e2
mov ecx, dword [esp + 0x28]
mov dword [esp + ecx*4 + 0xdc], ebx
inc dword [esp + 0x28]
cmp dword [esp + 0x28], ebx
jl 0x41b2d3
mov dword [esp + 0xe4], eax
jmp 0x41b35f
mov dword [esp + 0xc], 0xffffffff
mov byte [esp + 0x4c], al
cmp byte [esp + 0x4c], 0
je 0x41b31a
call dword [0xaab328]
push eax
call dword [0xaab314]
push eax
call dword [0xaab054]
xor eax, eax
mov dword [esp + 0xc], eax
jmp 0x41b352
mov edx, dword [esp + 0xe4]
mov ecx, dword [esp + 0x19c]
cmp dword [ecx + edx*4], eax
jne 0x41b358
mov byte [esp + 0x4a], al
cmp byte [esp + 0x4a], 0
je 0x41b34e
push eax
call dword [0xaab328]
push eax
call dword [0xaab2fc]
xor eax, eax
inc dword [esp + 0xc]
cmp dword [esp + 0xc], edi
jle 0x41b320
inc dword [esp + 0xe4]
cmp dword [esp + 0xe4], edi
jle 0x41b2f1
mov dword [esp + 0xdc], 0xffffffff
lea ecx, [esp + 0x19c]
call fcn.00413c0e
push 0x5dbe
push 0x436
lea eax, [esp + 0x84]
xor dl, dl
push eax
push 0xaa1
lea ecx, [esp + 0x1d0]
call fcn.0041c044
mov dword [esp + 0x1c], 0x57fd5464
add esp, 0x10
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x24], 0x60e77906
mov dword [esp + 0xc], 0x13
cmp dword [esp + 0xc], 0xffffffe9
je 0x41b4fc
mov edi, 0xffff
mov dword [esp + 0x1c], 0x669
mov dword [esp + 0x18], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x10], 0
jmp 0x41b404
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x25c], 0xadf29855
inc dword [esp + 0x10]
cmp dword [esp + 0x10], ebx
jl 0x41b3f1
mov eax, dword [esp + 0x1c]
add eax, dword [esp + 0x20]
imul eax, dword [esp + 0x1c]
neg eax
sbb eax, eax
xor edx, edx
neg eax
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
cmp ecx, eax
mov eax, dword [esp + 0xc]
setge dl
sub edx, edi
cmp edx, esi
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
mov dword [esp + 0x18], ecx
cmp dword [esp + 0x18], 0
je 0x41b4bb
push ebx
lea ecx, [esp + 0x1e8]
call fcn.00413b3c
xor eax, eax
mov dword [esp + 0x60], eax
jmp 0x41b478
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x1e4]
mov dword [ecx + edx*4], 0xd924
inc dword [esp + 0x60]
cmp dword [esp + 0x60], ebx
jl 0x41b462
mov byte [esp + 0x17], al
cmp byte [esp + 0x17], al
je 0x41b4a3
push 0x260b
push eax
push eax
call dword [0xaab328]
push eax
call dword [0xaab314]
push eax
call dword [0xaab04c]
mov eax, dword [esp + 0x1e4]
lea ecx, [esp + 0x1e4]
dec dword [eax + 4]
call fcn.00413c0e
jmp 0x41b4ea
cmp dword [esp + 0x1c], 0
jne 0x41b4f9
mov byte [esp + 0x17], 0
cmp byte [esp + 0x17], 0
je 0x41b4ea
push 0
push 0x1622
push 0x1180
push 0x10e3
push 0x198a
call dword [0xaab048]
dec dword [esp + 0xc]
cmp dword [esp + 0xc], 0xffffffe9
jne 0x41b3d7
push 2
pop edi
lea ecx, [esp + 0x1c0]
call fcn.00413c0e
inc dword [esp + 0x54]
cmp dword [esp + 0x54], 0x17
je 0x41b0ed
inc dword [esp + 0x38]
cmp dword [esp + 0x38], 0x19
jge 0x41a4d9
mov eax, dword [esp + 0x168]
mov ecx, 0x3e8
cdq
idiv ecx
mov ecx, dword [esp + 0x144]
mov edi, edx
mov esi, eax
call fcn.00419855
add eax, esi
add eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret