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

Disassembly:
push ebx
push edi
push esi
sub esp, 0xf8
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
mov esi, dword [esp + 0x108]
mov edi, 0x617a3d5d
mov dword [esp + 0xf0], eax
mov dword [esp + 0xec], ecx
mov dword [esp + 0xe8], edx
mov dword [esp + 0xe4], esi
mov eax, dword [0x4b1174]
xor eax, 0xffffffff
add eax, 0x32400f04
sub eax, 0x4e9f5473
cmp edi, eax
je 0x44130f
mov eax, dword [0x4ab728]
xor eax, 0x9b99e5f1
mov dword [0x4ab728], eax
mov eax, dword [0x4a7144]
inc eax
mov dword [0x4a7144], eax
imul eax, eax, 0x9ad30e52
mov cx, ax
mov word [0x49c64c], cx
mov cx, word [0x4a1562]
mov ax, cx
inc eax
mov cx, ax
mov word [0x4a1562], cx
movsx eax, cx
xor eax, 0x1a2b236a
mov cx, word [0x49f362]
movsx edx, cx
xor edx, 0xffffffff
cmp eax, edx
jl 0x441380
mov ax, word [0x4a0802]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x4a0802], ax
movsx ecx, ax
mov edx, dword [0x4a5404]
add edx, ecx
mov dword [0x4a5404], edx
xor eax, eax
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 0x70], eax
call fcn.00402d50
cmp eax, 0
jne 0x4413b6
mov dword [esp + 0xf4], 0xfffffff4
jmp 0x442c06
mov eax, 0xcbd6cbd3
mov ecx, dword [0x4aea6c]
imul ecx, ecx, 0x24020262
mov dword [0x4aea6c], ecx
mov ecx, esp
lea edx, [esp + 0x94]
mov dword [ecx + 0x10], edx
lea edx, [esp + 0xa0]
mov dword [ecx + 0xc], edx
lea edx, [esp + 0xac]
mov dword [ecx + 8], edx
lea edx, [esp + 0xb8]
mov dword [ecx + 4], edx
lea edx, [esp + 0xc4]
mov dword [ecx], edx
mov dword [ecx + 0x14], 0
mov dword [esp + 0x6c], eax
call fcn.00448b10
mov si, word [0x49f826]
mov ax, si
dec eax
mov si, ax
mov word [0x49f826], si
movsx eax, si
mov ecx, dword [0x4a2dec]
sub eax, ecx
add eax, 0x4f6a25f7
mov ecx, dword [esp + 0x6c]
cmp ecx, eax
je 0x441450
mov eax, dword [0x4a44b0]
add eax, 0xae974009
mov dword [0x4a44b0], eax
mov eax, dword [esp + 0xf0]
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004107d0
cmp eax, 0
jge 0x441580
mov eax, dword [0x4a482c]
add eax, 0x75adff9f
mov dword [0x4a482c], eax
cmp dword [esp + 0xe4], 0
je 0x4414c7
xor eax, eax
mov ecx, dword [esp + 0xe4]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 0x68], eax
call fcn.00447e40
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x4414c2
jmp 0x442baa
jmp 0x4414c7
mov eax, dword [0x4a71a4]
and eax, 0x1df1906f
xor eax, 0x4b358cfa
mov ecx, dword [0x4ab058]
inc ecx
mov dword [0x4ab058], ecx
cmp eax, ecx
jge 0x441509
mov eax, dword [0x4a44cc]
and eax, 0x95213d1d
mov ecx, dword [0x4ae950]
imul ecx, eax
mov dword [0x4ae950], ecx
jmp 0x441513
mov dword [0x4af910], 0x8d981ed3
cmp dword [esp + 0xe8], 0
je 0x441555
mov eax, dword [esp + 0xec]
mov ecx, dword [esp + 0xe8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00427810
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x441550
jmp 0x442baa
jmp 0x441555
mov eax, dword [0x4b0658]
not eax
imul eax, eax, 0x56e45e02
mov ecx, dword [0x4a4d30]
xor ecx, eax
mov dword [0x4a4d30], ecx
mov dword [esp + 0xf4], 0
jmp 0x442c06
lea eax, [esp + 0xc4]
mov cx, word [0x49d8e6]
mov dx, cx
dec edx
mov si, dx
mov word [0x49d8e6], si
movsx edx, cx
mov edi, dword [0x4a8660]
imul edx, edi
imul edx, edx, 0xd61363c
mov edi, dword [0x4a9730]
add edi, edx
mov dword [0x4a9730], edi
mov edx, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00427810
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x4415e4
jmp 0x442baa
lea eax, [esp + 0xb8]
mov ecx, dword [0x4a23f0]
and ecx, 0x8779abe4
mov dword [0x4a23f0], ecx
mov ecx, dword [esp + 0xf0]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00427810
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x441625
jmp 0x442baa
lea eax, [esp + 0xac]
mov ecx, dword [0x4a18ac]
mov edx, ecx
dec edx
mov dword [0x4a18ac], edx
mov edx, 0x11bc2e57
sub edx, ecx
mov si, word [0x4a12ca]
mov cx, si
imul ecx, edx
mov si, cx
mov word [0x4a12ca], si
mov dword [esp + 0xb8], 1
mov dword [esp + 0xc4], 1
mov si, word [0x49f33c]
mov cx, si
add ecx, 0x5cf75595
mov si, cx
mov word [0x49f33c], si
mov ecx, dword [esp + 0xec]
mov ecx, dword [ecx + 4]
add ecx, 2
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004151f0
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x4416b7
jmp 0x442baa
mov eax, 0x5c401b21
mov ecx, dword [0x4a93a4]
xor ecx, 0xffffffff
cmp eax, ecx
jne 0x4416dc
mov eax, dword [0x4adb2c]
and eax, 0xfdfdff3f
mov dword [0x4adb2c], eax
lea eax, [esp + 0xac]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 0x64], ecx
call fcn.00447e40
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x44170e
jmp 0x442baa
lea eax, [esp + 0xa0]
mov ecx, 2
mov dword [0x4b0fbc], 0x4093a02
mov dword [esp], eax
mov dword [esp + 4], 2
mov dword [esp + 0x60], ecx
call fcn.004151f0
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x44174d
jmp 0x442baa
lea eax, [esp + 0x94]
mov ecx, 3
mov edx, dword [0x4a2ccc]
imul edx, edx, 0xde5d5eab
mov dword [0x4a2ccc], edx
mov dword [esp], eax
mov dword [esp + 4], 3
mov dword [esp + 0x5c], ecx
call fcn.004151f0
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x441794
jmp 0x442baa
mov eax, dword [0x4a95a4]
mov ecx, dword [0x4a3fdc]
lea eax, [eax + ecx + 0x37666e70]
mov dword [0x4a3fdc], eax
mov eax, esp
lea ecx, [esp + 0xb8]
mov dword [eax], ecx
call fcn.004150d0
mov ecx, eax
sar ecx, 0x1f
shr ecx, 0x1b
mov edx, eax
add edx, ecx
and edx, 0xffffffe0
sub eax, edx
mov dword [esp + 0xd0], eax
mov word [0x499718], 0x52a0
cmp dword [esp + 0xd0], 0x1f
jge 0x4418d0
lea eax, [esp + 0xc4]
mov cx, word [0x49c954]
mov dx, cx
mov cx, word [0x49ce8e]
mov si, cx
xor edx, esi
xor edx, 0x1a4f
mov cx, dx
mov word [0x49ce8e], cx
mov edx, dword [esp + 0xd0]
mov esi, 0x1f
sub esi, edx
mov dword [esp + 0xd0], esi
mov edx, dword [0x4ae5a4]
xor edx, 0xcb841d85
mov dword [0x4ae5a4], edx
mov edx, dword [esp + 0xd0]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0042b300
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x441866
jmp 0x442baa
lea eax, [esp + 0xb8]
mov ecx, dword [0x4ab93c]
xor ecx, 0xf0c5f083
mov dword [0x4ab93c], ecx
mov ecx, dword [esp + 0xd0]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0042b300
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x4418a7
jmp 0x442baa
mov ax, word [0x4a0e9e]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x4a0e9e], ax
movsx ecx, ax
mov edx, dword [0x4af544]
sub edx, ecx
mov dword [0x4af544], edx
jmp 0x4418db
mov dword [esp + 0xd0], 0
mov eax, 0xe937eec9
mov ecx, dword [0x4a99b0]
cmp eax, ecx
jg 0x441943
mov eax, dword [0x4abfbc]
mov ecx, dword [0x4b03a4]
and eax, ecx
mov ecx, dword [0x4a8b84]
inc ecx
mov dword [0x4a8b84], ecx
mov edx, dword [0x4adad4]
inc edx
mov dword [0x4adad4], edx
mov esi, dword [0x4a9274]
dec esi
mov dword [0x4a9274], esi
xor edx, esi
or ecx, edx
cmp eax, ecx
jl 0x44193e
mov eax, dword [0x4abc38]
imul eax, eax, 0x49c0784a
mov dword [0x4abc38], eax
jmp 0x441943
mov eax, dword [esp + 0xc8]
dec eax
mov dword [esp + 0xd8], eax
mov eax, dword [0x4a43fc]
and eax, 0xf66515e6
mov ecx, dword [0x4a40f4]
add ecx, eax
mov dword [0x4a40f4], ecx
mov eax, dword [esp + 0xbc]
dec eax
mov dword [esp + 0xd4], eax
mov dx, word [0x49d52a]
mov ax, dx
mov dx, word [0x49b134]
mov cx, dx
and eax, ecx
and eax, 0x312e
mov dx, ax
mov word [0x49b134], dx
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xd4]
sub eax, ecx
shl eax, 5
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0xb8]
mov dword [ecx], eax
call fcn.0042b300
mov ecx, dword [0x4aeb4c]
mov esi, 0x8d3c03e9
sub esi, ecx
mov ecx, dword [0x4a24b4]
or ecx, esi
mov dword [0x4a24b4], ecx
mov dword [esp + 0x58], eax
lea eax, [esp + 0xc4]
lea ecx, [esp + 0xb8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004436d0
cmp eax, 0
jl 0x441a8e
mov eax, 0xed62e3fa
mov ecx, dword [0x4ab1c0]
xor ecx, 0xa5df44e0
cmp eax, ecx
jge 0x441a2e
mov eax, dword [0x4a2c84]
or eax, 0x22641084
mov dword [0x4b09f4], eax
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xd4]
sub eax, ecx
mov ecx, dword [esp + 0xb4]
mov edx, dword [ecx + eax*4]
inc edx
mov dword [ecx + eax*4], edx
mov dword [0x4aa014], 0x6f9158b1
mov eax, esp
lea ecx, [esp + 0xb8]
mov dword [eax + 8], ecx
lea ecx, [esp + 0xc4]
mov dword [eax + 4], ecx
mov dword [eax], ecx
call fcn.0040f730
mov ecx, dword [0x4a24fc]
imul ecx, ecx, 0x4b456d10
mov dword [0x4a24fc], ecx
mov dword [esp + 0x54], eax
jmp 0x4419e3
mov eax, 0xa42257d
mov cx, word [0x4a0354]
movsx edx, cx
imul edx, edx, 0xaab5dd3e
mov esi, dword [0x4b070c]
shl esi, 6
and edx, esi
mov esi, dword [0x4a97d8]
or esi, edx
mov dword [0x4a97d8], esi
mov edx, dword [esp + 0xd8]
mov esi, dword [esp + 0xd4]
sub edx, esi
shl edx, 5
mov esi, esp
mov dword [esi + 4], edx
lea edx, [esp + 0xb8]
mov dword [esi], edx
mov dword [esp + 0x50], eax
call fcn.004103f0
mov edx, dword [0x4af1d0]
mov esi, edx
dec esi
mov dword [0x4af1d0], esi
mov esi, dword [esp + 0x50]
cmp esi, edx
mov dword [esp + 0x4c], eax
jne 0x441b0f
mov dword [0x4ae3f4], 0x3e10074d
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0xdc]
cmp eax, dword [esp + 0xd4]
jle 0x442927
mov eax, dword [0x4ad094]
add eax, 0x6ffe0070
mov dword [0x4ad094], eax
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xcc]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0xc0]
cmp eax, dword [edx + ecx*4]
jb 0x441b8c
mov eax, dword [esp + 0xdc]
sub eax, dword [esp + 0xd4]
sub eax, 1
mov ecx, dword [esp + 0xb4]
mov dword [ecx + eax*4], 0xffffffff
jmp 0x44225e
mov eax, 0x5f496573
mov ecx, dword [0x4a70b0]
or ecx, 0x8f192d6f
mov dword [0x4a70b0], ecx
mov ecx, dword [0x4a73b8]
add ecx, 0x42a2022e
mov dx, word [0x49a14e]
mov si, dx
and esi, ecx
mov dx, si
mov word [0x49a14e], dx
mov dx, word [0x49e936]
movsx ecx, dx
add ecx, 0xb724e1f
mov dx, word [0x49a190]
movsx esi, dx
shl esi, 7
sub ecx, esi
cmp eax, ecx
jl 0x441c3b
mov eax, dword [0x4a5054]
mov ecx, eax
dec ecx
mov dword [0x4a5054], ecx
mov ecx, dword [0x4a7bec]
mov edx, ecx
dec edx
mov dword [0x4a7bec], edx
sub eax, ecx
mov si, word [0x49a938]
mov cx, si
mov edx, ecx
dec edx
mov si, dx
mov word [0x49a938], si
add eax, ecx
mov si, word [0x49e6d2]
mov cx, si
imul ecx, eax
mov si, cx
mov word [0x49e6d2], si
mov eax, 0xb3afff6e
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0xc0]
mov ecx, dword [edx + ecx*4]
mov dword [esp + 0x78], ecx
mov si, word [0x4a0806]
mov cx, si
xor ecx, 0x597f
mov si, cx
mov word [0x4a0806], si
movzx ecx, word [esp + 0x78]
mov dword [esp + 0x80], ecx
mov ecx, dword [0x4a68e8]
inc ecx
mov dword [0x4a68e8], ecx
add ecx, 0x6b91f198
cmp eax, ecx
jge 0x441ca5
mov eax, dword [0x4a36c8]
add eax, 0x68dfa96e
mov dword [0x4a36c8], eax
movzx eax, word [esp + 0x7a]
mov dword [esp + 0x7c], eax
mov eax, dword [0x4b0620]
not eax
mov ecx, dword [0x4a3090]
lea eax, [eax + ecx + 0x9bc81a2]
mov ecx, dword [0x4a4494]
and ecx, eax
mov dword [0x4a4494], ecx
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xcc]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0x7c]
xor edx, edx
div ecx
mov dword [esp + 0x8c], eax
mov eax, dword [0x4a1cc4]
add eax, 0xafeb7a00
mov dword [0x4a1cc4], eax
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xcc]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x8c]
imul ecx, edx
sub eax, ecx
mov dword [esp + 0x84], eax
mov eax, dword [0x4a32d8]
add eax, 0xb32978a1
mov ecx, dword [0x4ad39c]
imul ecx, eax
mov dword [0x4ad39c], ecx
mov eax, dword [esp + 0x84]
shl eax, 0x10
mov dword [esp + 0x84], eax
mov eax, dword [0x4a8ed0]
or eax, 0xa648729e
mov dword [0x4a8ed0], eax
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xcc]
movzx eax, word [ecx + eax*4 - 2]
mov ecx, dword [esp + 0x84]
or ecx, eax
mov dword [esp + 0x84], ecx
mov eax, dword [0x4ac0a4]
add eax, 0x70021224
mov dword [0x4ac0a4], eax
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x80]
imul eax, ecx
mov dword [esp + 0x74], eax
mov dword [0x4adfc4], 0xcc20d4a0
mov eax, dword [esp + 0x84]
cmp eax, dword [esp + 0x74]
jae 0x441ed9
mov ax, word [0x49c97e]
mov cx, ax
add ecx, 0x428c471c
mov ax, cx
mov word [0x49c97e], ax
mov ecx, dword [esp + 0x8c]
dec ecx
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x84]
add edx, ecx
mov dword [esp + 0x84], edx
mov ax, word [0x49ed5c]
movsx ecx, ax
shl ecx, 0xa
imul ecx, ecx, 0xdacff111
sub ecx, 0x1b7aa6e6
cmp ecx, 0xae02a5aa
jle 0x441e30
mov eax, dword [0x4ab70c]
add eax, 0x55b0d119
mov dword [0x4ab70c], eax
jmp 0x441e35
xor eax, eax
mov cl, al
mov eax, dword [esp + 0x84]
cmp eax, dword [esp + 0x78]
mov byte [esp + 0x4b], cl
jb 0x441e60
mov eax, dword [esp + 0x84]
cmp eax, dword [esp + 0x74]
setb cl
mov byte [esp + 0x4b], cl
mov al, byte [esp + 0x4b]
test al, 1
jne 0x441e71
jmp 0x441e99
mov eax, dword [esp + 0x8c]
add eax, 0xffffffff
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x78]
add eax, dword [esp + 0x84]
mov dword [esp + 0x84], eax
jmp 0x441e35
mov eax, 0xbffbefb3
mov cx, word [0x4a0a1c]
movsx edx, cx
cmp eax, edx
jle 0x441ed4
mov ax, word [0x49e320]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x49e320], ax
movsx ecx, ax
mov edx, dword [0x4a5b6c]
or edx, ecx
mov dword [0x4a5b6c], edx
jmp 0x441ed9
mov ax, word [0x49fac6]
mov cx, ax
add ecx, 0x22821
mov ax, cx
mov word [0x49fac6], ax
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x84]
sub edx, ecx
mov dword [esp + 0x84], edx
mov dword [0x4a7398], 0xb0196467
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x7c]
xor edx, edx
div ecx
mov dword [esp + 0x90], eax
mov si, word [0x49ff0a]
movsx eax, si
or eax, 0x906bab5c
cmp eax, 0x3cf1dfff
jg 0x441f4f
mov eax, dword [0x4a2570]
imul eax, eax, 0xdba1ac1f
mov dword [0x4a2570], eax
mov eax, 0x969e0638
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x7c]
mov esi, dword [esp + 0x90]
imul edx, esi
sub ecx, edx
mov dword [esp + 0x88], ecx
mov ecx, dword [0x4a569c]
xor ecx, 0x56544a5
mov edx, dword [0x4a217c]
imul edx, ecx
mov dword [0x4a217c], edx
mov ecx, dword [esp + 0x88]
shl ecx, 0x10
mov dword [esp + 0x88], ecx
mov ecx, dword [0x4a7860]
cmp eax, ecx
jne 0x441fc4
mov ax, word [0x49c1d0]
mov cx, ax
xor ecx, 0xed17
mov ax, cx
mov word [0x49c1d0], ax
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xcc]
movzx eax, word [ecx + eax*4 - 4]
mov ecx, dword [esp + 0x88]
or ecx, eax
mov dword [esp + 0x88], ecx
mov eax, dword [0x4a9a10]
mov ecx, eax
dec ecx
mov dword [0x4a9a10], ecx
mov ecx, dword [0x4a8ca4]
sar ecx, 2
and eax, ecx
or eax, 0x66bf954a
cmp eax, 0x7e769cea
jge 0x442058
mov eax, dword [0x4aad54]
add eax, 0x9764265c
cmp eax, 0x500a3ff0
jle 0x442053
mov eax, dword [0x4a3478]
mov ecx, eax
inc ecx
mov dword [0x4a3478], ecx
add eax, 0x8f6bc400
xor eax, 0x63c2
mov dx, word [0x49dada]
mov cx, dx
or ecx, eax
mov dx, cx
mov word [0x49dada], dx
jmp 0x442067
mov eax, dword [0x4a36f0]
and eax, 0xf6f44d6c
mov dword [0x4a36f0], eax
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x80]
imul eax, ecx
mov dword [esp + 0x74], eax
mov eax, dword [0x4af238]
mov ecx, dword [0x4b0f30]
or eax, ecx
mov ecx, dword [0x4ac274]
or ecx, eax
mov dword [0x4ac274], ecx
mov eax, dword [esp + 0x88]
cmp eax, dword [esp + 0x74]
jae 0x4421b2
mov eax, 0xd411634f
mov ecx, dword [0x4ac984]
add ecx, 0xe082ad1f
cmp eax, ecx
jle 0x4420d4
mov eax, dword [0x4a351c]
mov ecx, dword [0x4a25f8]
or ecx, eax
mov dword [0x4a25f8], ecx
mov eax, dword [esp + 0x90]
dec eax
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x88]
add ecx, eax
mov dword [esp + 0x88], ecx
mov eax, dword [0x4a5988]
or eax, 0xe49b9018
mov dword [0x4a5988], eax
xor eax, eax
mov cl, al
mov eax, dword [esp + 0x88]
cmp eax, dword [esp + 0x78]
mov byte [esp + 0x4a], cl
jb 0x442131
mov eax, dword [esp + 0x88]
cmp eax, dword [esp + 0x74]
setb cl
mov byte [esp + 0x4a], cl
mov al, byte [esp + 0x4a]
test al, 1
jne 0x442142
jmp 0x44216a
mov eax, dword [esp + 0x90]
add eax, 0xffffffff
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x78]
add eax, dword [esp + 0x88]
mov dword [esp + 0x88], eax
jmp 0x442106
mov eax, 0x64315d95
mov ecx, dword [0x4ac2e8]
mov edx, dword [0x4a9468]
sar edx, 6
and ecx, edx
cmp eax, ecx
jne 0x4421ad
mov ax, word [0x499a00]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x499a00], dx
movsx ecx, ax
mov esi, dword [0x4a1d64]
add esi, ecx
mov dword [0x4a1d64], esi
jmp 0x4421b2
mov eax, 0xbaccb453
mov cx, word [0x49e950]
mov dx, cx
and edx, 0xcc09
mov cx, dx
mov word [0x49fefa], cx
mov edx, dword [esp + 0x74]
mov esi, dword [esp + 0x88]
sub esi, edx
mov dword [esp + 0x88], esi
mov edx, dword [0x4aa200]
mov esi, edx
dec esi
mov dword [0x4aa200], esi
imul edx, edx, 0x9c56266a
and edx, 0xcb08436
mov esi, dword [0x4acb38]
add esi, edx
mov dword [0x4acb38], esi
mov edx, dword [esp + 0x8c]
shl edx, 0x10
mov esi, dword [esp + 0x90]
or edx, esi
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0xd4]
sub esi, edi
mov edi, dword [esp + 0xb4]
mov dword [edi + esi*4 - 4], edx
mov edx, dword [0x4a33b4]
cmp eax, edx
jne 0x442259
mov eax, dword [0x4afc24]
xor eax, 0x4049003
mov dword [0x4afc24], eax
jmp 0x44225e
mov ax, word [0x49c56a]
movsx ecx, ax
sar ecx, 0xa
xor ecx, 0x68dff873
cmp ecx, 0xc49ef08c
jg 0x442290
mov eax, dword [0x4a7b68]
and eax, 0x6c3c41e6
mov dword [0x4a7b68], eax
jmp 0x44229f
mov eax, dword [0x4a7564]
xor eax, 0x27d5d2d3
mov dword [0x4a7564], eax
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xd4]
sub eax, ecx
mov ecx, dword [esp + 0xb4]
mov edx, dword [ecx + eax*4 - 4]
inc edx
mov dword [ecx + eax*4 - 4], edx
mov eax, dword [0x4a251c]
mov ecx, dword [0x4a21c4]
and eax, ecx
mov ecx, dword [0x4ad0b4]
imul ecx, eax
mov dword [0x4ad0b4], ecx
lea eax, [esp + 0xa0]
xor ecx, ecx
mov edx, dword [0x4a6e04]
dec edx
mov dword [0x4a6e04], edx
mov si, word [0x49f95a]
mov di, si
xor edx, edi
xor edx, 0x1888
mov si, dx
mov word [0x49f95a], si
mov edx, dword [esp + 0xdc]
mov edi, dword [esp + 0xd4]
sub edx, edi
mov edi, dword [esp + 0xb4]
mov ebx, dword [edi + edx*4 - 4]
dec ebx
mov dword [edi + edx*4 - 4], ebx
mov edx, dword [0x4a1f58]
mov edi, edx
dec edi
mov dword [0x4a1f58], edi
add edx, 0x67432f77
mov si, word [0x4a0682]
mov di, si
xor edi, edx
mov si, di
mov word [0x4a0682], si
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 0x44], ecx
call fcn.00447e40
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x442381
jmp 0x442baa
mov word [0x49b0fa], 0x96ea
cmp dword [esp + 0xd4], 1
jge 0x4423a3
xor eax, eax
mov dword [esp + 0x40], eax
jmp 0x4423bb
mov eax, dword [esp + 0xd4]
sub eax, 1
mov ecx, dword [esp + 0xc0]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0xa0]
mov edx, dword [esp + 0xa8]
mov dword [edx], eax
mov eax, dword [0x4aea78]
add eax, 0xb4014451
mov dword [0x4aea78], eax
mov eax, dword [esp + 0xd4]
mov edx, dword [esp + 0xc0]
mov eax, dword [edx + eax*4]
mov edx, dword [esp + 0xa8]
mov dword [edx + 4], eax
mov eax, dword [0x4a280c]
shl eax, 7
mov edx, 0x584c4c73
sub edx, eax
xor edx, 0x4a99
mov si, word [0x49e656]
mov ax, si
imul eax, edx
mov si, ax
mov word [0x49e656], si
mov eax, dword [esp + 0xdc]
sub eax, dword [esp + 0xd4]
sub eax, 1
mov edx, dword [esp + 0xb4]
mov eax, dword [edx + eax*4]
mov dword [esp], ecx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0040fce0
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x442465
jmp 0x442baa
mov eax, dword [0x4adf64]
sar eax, 1
mov cx, word [0x49fc76]
movsx edx, cx
xor edx, 0xffffffff
add eax, edx
cmp eax, 0xb2a67a4c
jg 0x4424a4
mov eax, dword [0x4adff8]
mov ecx, dword [0x4a4e58]
dec ecx
mov dword [0x4a4e58], ecx
sub eax, ecx
mov dword [0x4ab008], eax
jmp 0x4424ec
mov ax, word [0x4a0454]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x4a0454], ax
movsx ecx, ax
imul ecx, ecx, 0x97c8139f
and ecx, 0xe06476fa
cmp ecx, 0xf0926d9d
jle 0x4424e7
mov eax, dword [0x4a49dc]
not eax
mov ecx, dword [0x4a45f0]
add ecx, eax
mov dword [0x4a45f0], ecx
jmp 0x4424ec
lea eax, [esp + 0x94]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 0x3c], ecx
call fcn.00447e40
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x44251e
jmp 0x442baa
mov eax, 0x3d797efb
mov cx, word [0x49aeb2]
mov dx, cx
inc edx
mov si, dx
mov word [0x49aeb2], si
movsx edx, cx
mov edi, dword [0x4a94c4]
xor edx, edi
cmp eax, edx
jle 0x44255a
mov eax, dword [0x4ad390]
add eax, 0x5111421
mov dword [0x4ad390], eax
cmp dword [esp + 0xdc], 2
jge 0x442573
xor eax, eax
mov dword [esp + 0x38], eax
jmp 0x44258b
mov eax, dword [esp + 0xdc]
sub eax, 2
mov ecx, dword [esp + 0xcc]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x9c]
mov dword [ecx], eax
mov eax, dword [0x4a5078]
or eax, 0xd3ee7d95
mov dword [0x4a5078], eax
cmp dword [esp + 0xdc], 1
jge 0x4425c0
xor eax, eax
mov dword [esp + 0x34], eax
jmp 0x4425d8
mov eax, dword [esp + 0xdc]
sub eax, 1
mov ecx, dword [esp + 0xcc]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x9c]
mov dword [ecx + 4], eax
mov dx, word [0x49ad96]
mov ax, dx
xor eax, 0x704a
mov dx, ax
mov word [0x49ad96], dx
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xcc]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0x9c]
mov dword [ecx + 8], eax
mov eax, dword [0x4a2964]
xor eax, 0xebe498a0
mov dword [0x4a2964], eax
lea eax, [esp + 0xa0]
lea ecx, [esp + 0x94]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004436d0
cmp eax, 0
jg 0x4422db
lea eax, [esp + 0xa0]
lea ecx, [esp + 0xb8]
mov dx, word [0x49a83e]
mov si, dx
xor esi, 0xc127
mov dx, si
mov word [0x49a83e], dx
mov esi, dword [esp + 0xdc]
sub esi, dword [esp + 0xd4]
sub esi, 1
mov edi, dword [esp + 0xb4]
mov esi, dword [edi + esi*4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.0040fce0
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x4426b4
jmp 0x442baa
lea eax, [esp + 0xa0]
mov cx, word [0x49b0f6]
movsx edx, cx
shl edx, 4
mov esi, dword [0x4b03c8]
mov edi, esi
dec edi
mov dword [0x4b03c8], edi
and esi, 0x548beb60
or edx, esi
mov esi, dword [0x4a6174]
imul esi, edx
mov dword [0x4a6174], esi
mov edx, dword [esp + 0xdc]
sub edx, dword [esp + 0xd4]
sub edx, 1
shl edx, 5
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0042b300
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x442723
jmp 0x442baa
lea eax, [esp + 0xc4]
lea ecx, [esp + 0xa0]
mov dx, word [0x49be36]
mov si, dx
inc esi
mov dx, si
mov word [0x49be36], dx
movsx esi, dx
and esi, 0x9d18d21
mov edi, dword [0x4a3244]
sub edi, esi
mov dword [0x4a3244], edi
mov dword [esp], eax
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0040f730
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x442782
jmp 0x442baa
lea eax, [esp + 0xc4]
xor ecx, ecx
mov edx, dword [0x4a735c]
add edx, 0x358e7780
mov dword [0x4a735c], edx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 0x30], ecx
call fcn.00402d50
cmp eax, 0
jge 0x442902
mov eax, 0x4365ac25
mov ecx, dword [0x4aa938]
dec ecx
mov dword [0x4aa938], ecx
imul ecx, ecx, 0x80f87895
cmp eax, ecx
jge 0x4427ee
mov eax, dword [0x4add10]
or eax, 0x44cf5880
mov dword [0x4add10], eax
jmp 0x4427fd
mov eax, dword [0x4aa234]
xor eax, 0xeee65ea3
mov dword [0x4aa234], eax
lea eax, [esp + 0xa0]
lea ecx, [esp + 0xb8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00427810
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x44282c
jmp 0x442baa
lea eax, [esp + 0xa0]
mov ecx, dword [0x4a1d54]
add ecx, 0x7946dd83
mov edx, dword [0x4ab63c]
and edx, ecx
mov dword [0x4ab63c], edx
mov ecx, dword [esp + 0xdc]
sub ecx, dword [esp + 0xd4]
sub ecx, 1
shl ecx, 5
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0042b300
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x442882
jmp 0x442baa
lea eax, [esp + 0xc4]
lea ecx, [esp + 0xa0]
mov edx, dword [0x4a9060]
xor edx, 0xe684ae17
mov dword [0x4a9060], edx
mov dword [esp], eax
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0042e6a0
mov dword [esp + 0xe0], eax
cmp eax, 0
je 0x4428c7
jmp 0x442baa
mov eax, dword [0x4abc74]
not eax
mov dword [0x4ae764], eax
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0xd4]
sub eax, ecx
mov ecx, dword [esp + 0xb4]
mov edx, dword [ecx + eax*4 - 4]
dec edx
mov dword [ecx + eax*4 - 4], edx
mov eax, dword [0x4ad980]
and eax, 0xacabefc1
mov dword [0x4ad980], eax
mov eax, dword [0x4a1a30]
and eax, 0x933e3db9
mov dword [0x4a1a30], eax
mov eax, dword [esp + 0xdc]
add eax, 0xffffffff
mov dword [esp + 0xdc], eax
jmp 0x441b1d
mov eax, dword [0x4a8a08]
and eax, 0xb6e5ec11
mov dword [0x4a8a08], eax
cmp dword [esp + 0xe4], 0
je 0x442a26
mov eax, 0xb7d27469
mov ecx, dword [0x4a9afc]
mov edx, ecx
inc edx
mov dword [0x4a9afc], edx
imul ecx, ecx, 0x5a2a3729
mov edx, dword [0x4b0d80]
or ecx, edx
or ecx, 0xb61469b0
mov dword [0x4b0d80], ecx
mov ecx, dword [esp + 0xe4]
mov edx, esp
lea esi, [esp + 0xac]
mov dword [edx + 4], esi
mov dword [edx], ecx
mov dword [esp + 0x2c], eax
call fcn.00427810
mov di, word [0x4a0a30]
mov cx, di
not ecx
mov di, word [0x4997e4]
mov dx, di
and ecx, edx
and ecx, 0xb9a7
mov di, cx
mov word [0x4997e4], di
mov ecx, dword [esp + 0xec]
mov ecx, dword [ecx]
mov edx, dword [esp + 0xf0]
mov edx, dword [edx]
imul ecx, edx
mov edx, dword [esp + 0xe4]
mov dword [edx], ecx
mov ecx, dword [0x4a6030]
mov edx, dword [0x4a5490]
mov esi, edx
inc esi
mov dword [0x4a5490], esi
mov di, word [0x4a02a4]
movsx esi, di
xor edx, esi
or ecx, edx
mov edx, dword [esp + 0x2c]
cmp edx, ecx
mov dword [esp + 0x28], eax
je 0x442a21
mov eax, dword [0x4a4960]
and eax, 0xc01d1008
mov ecx, dword [0x4aaba4]
add ecx, eax
mov dword [0x4aaba4], ecx
jmp 0x442a26
mov eax, dword [0x4a4124]
and eax, 0x127d0b49
mov ecx, dword [0x4ab170]
add ecx, eax
mov dword [0x4ab170], ecx
cmp dword [esp + 0xe8], 0
je 0x442b50
xor eax, eax
mov cx, word [0x49b5ca]
mov dx, cx
xor edx, 0x59aa
mov cx, dx
mov word [0x49b5ca], cx
mov edx, dword [esp + 0xd0]
mov esi, esp
mov dword [esi + 4], edx
lea edx, [esp + 0xc4]
mov dword [esi], edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], edx
call fcn.004103f0
mov edx, dword [0x4a1dcc]
or edx, 0xe208
mov cx, word [0x499a7a]
mov si, cx
sub esi, edx
mov cx, si
mov word [0x499a7a], cx
mov edx, dword [esp + 0xe8]
mov esi, esp
mov edi, dword [esp + 0x20]
mov dword [esi + 4], edi
mov dword [esi], edx
mov dword [esp + 0x1c], eax
call fcn.00427810
mov edx, dword [0x4a7d34]
add edx, 0x5f6c666b
mov dword [0x4a7d34], edx
mov edx, dword [esp + 0xec]
mov edx, dword [edx]
mov esi, dword [esp + 0xe8]
mov dword [esi], edx
mov edx, dword [0x4a9400]
or edx, 0xe2daec6a
mov dword [0x4a9400], edx
mov edx, dword [esp + 0xe8]
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 0x18], eax
call fcn.00402d50
cmp eax, 0
jne 0x442b2e
mov eax, dword [esp + 0xe8]
mov dword [eax], 1
mov ax, word [0x49b428]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x49b428], ax
xor ecx, 0x82bf
mov ax, cx
mov word [0x4a1182], ax
mov eax, dword [0x4a25a0]
inc eax
mov dword [0x4a25a0], eax
sub eax, 0xbb8fad3
and eax, 0xdc80046d
cmp eax, 0x87ccba50
jge 0x442b84
mov eax, dword [0x4a2f44]
xor eax, 0xe98cc0ac
mov dword [0x4a2f44], eax
jmp 0x442ba5
mov ax, word [0x49b722]
movsx ecx, ax
mov edx, dword [0x4aed5c]
mov esi, edx
inc esi
mov dword [0x4aed5c], esi
imul ecx, edx
mov dword [0x4a975c], ecx
jmp 0x442baa
mov eax, esp
lea ecx, [esp + 0x94]
mov dword [eax + 0x10], ecx
lea ecx, [esp + 0xa0]
mov dword [eax + 0xc], ecx
lea ecx, [esp + 0xac]
mov dword [eax + 8], ecx
lea ecx, [esp + 0xb8]
mov dword [eax + 4], ecx
lea ecx, [esp + 0xc4]
mov dword [eax], ecx
mov dword [eax + 0x14], 0
call fcn.00439b30
mov eax, dword [0x4a3f20]
add eax, 0x11512045
mov dword [0x4a3f20], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 0xf4], eax
mov eax, dword [esp + 0xf4]
add esp, 0xf8
pop esi
pop edi
pop ebx
ret