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

Disassembly:
push ebx
push edi
push esi
sub esp, 0xf4
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x108]
mov esi, dword [esp + 0x104]
mov edi, 0x1602eb72
mov dword [esp + 0xec], eax
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe0], esi
mov bx, word [0x49231c]
movsx eax, bx
or eax, 0xa064c7b6
mov dword [0x491938], eax
mov bx, word [0x492432]
mov ax, bx
or eax, 0x4c52
mov bx, ax
mov word [0x492432], bx
mov eax, dword [0x491774]
mov ecx, eax
inc ecx
mov dword [0x491774], ecx
mov ecx, 0x37970d63
sub ecx, eax
mov bx, word [0x492418]
movsx eax, bx
sub edi, eax
cmp ecx, edi
je 0x42cc0c
mov eax, dword [0x491ed8]
dec eax
mov dword [0x491ed8], eax
mov ecx, dword [0x491554]
mov edx, ecx
dec edx
mov dword [0x491554], edx
add ecx, 0x4322bc50
xor eax, ecx
mov ecx, dword [0x491848]
or ecx, eax
mov dword [0x491848], ecx
xor eax, eax
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 0x6c], eax
call fcn.0042a180
cmp eax, 0
jne 0x42cc42
mov dword [esp + 0xf0], 0xfffffff4
jmp 0x42e4e7
mov eax, 0x147a4fe
mov ecx, dword [0x491af8]
and ecx, 0x62f92f91
mov edx, dword [0x4917a4]
sar edx, 1
and ecx, edx
cmp eax, ecx
jge 0x42cc75
mov eax, dword [0x491c70]
or eax, 0x40202530
mov dword [0x491c70], eax
mov eax, esp
lea ecx, [esp + 0x90]
mov dword [eax + 0x10], ecx
lea ecx, [esp + 0x9c]
mov dword [eax + 0xc], ecx
lea ecx, [esp + 0xa8]
mov dword [eax + 8], ecx
lea ecx, [esp + 0xb4]
mov dword [eax + 4], ecx
lea ecx, [esp + 0xc0]
mov dword [eax], ecx
mov dword [eax + 0x14], 0
call fcn.0043d0d0
mov eax, dword [0x4914ac]
or eax, 0xfff7fff5
mov dword [0x4914ac], eax
mov eax, dword [esp + 0xec]
mov ecx, dword [esp + 0xe8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00437970
cmp eax, 0
jge 0x42cdee
mov eax, 0x40820424
mov ecx, dword [0x491a0c]
xor ecx, 0xffffffff
cmp eax, ecx
jle 0x42cd1b
mov eax, dword [0x491d98]
inc eax
mov dword [0x491d98], eax
and eax, 0x542ef581
mov ecx, dword [0x491de8]
imul ecx, eax
mov dword [0x491de8], ecx
cmp dword [esp + 0xe0], 0
je 0x42cd60
xor eax, eax
mov ecx, dword [esp + 0xe0]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 0x68], eax
call fcn.00426cf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42cd5b
jmp 0x42e46e
jmp 0x42cd60
mov ax, word [0x492292]
mov cx, ax
add ecx, 0x9febee59
mov ax, cx
mov word [0x492292], ax
cmp dword [esp + 0xe4], 0
je 0x42cdba
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xe4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0042ebf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42cdb5
jmp 0x42e46e
jmp 0x42cdba
mov eax, dword [0x4916d0]
dec eax
mov dword [0x4916d0], eax
or eax, 0xd5fbe79
and eax, 0xaf7ffefd
mov ecx, dword [0x4914ec]
imul ecx, eax
mov dword [0x4914ec], ecx
mov dword [esp + 0xf0], 0
jmp 0x42e4e7
lea eax, [esp + 0xc0]
mov ecx, dword [0x491d8c]
add ecx, 0xbaa8692f
mov dword [0x491d8c], ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0042ebf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42ce2f
jmp 0x42e46e
lea eax, [esp + 0xb4]
mov ecx, dword [0x491a5c]
imul ecx, ecx, 0x7add03a
mov dword [0x491a5c], ecx
mov ecx, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0042ebf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42ce70
jmp 0x42e46e
lea eax, [esp + 0xa8]
mov ecx, dword [0x491d04]
or ecx, 0xd485aa37
mov dword [0x491d04], ecx
mov dword [esp + 0xb4], 1
mov dword [esp + 0xc0], 1
mov ecx, dword [0x491b78]
add ecx, 0x4c45f73f
mov dword [0x491b78], ecx
mov ecx, dword [esp + 0xe8]
mov ecx, dword [ecx + 4]
add ecx, 2
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040acf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42cedf
jmp 0x42e46e
lea eax, [esp + 0xa8]
xor ecx, ecx
mov dx, word [0x4920ce]
movsx esi, dx
or esi, 0xd035b802
mov edi, dword [0x49175c]
xor edi, esi
mov dword [0x49175c], edi
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 0x64], ecx
call fcn.00426cf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42cf2f
jmp 0x42e46e
mov eax, 0x5284488d
mov ecx, dword [0x4915d0]
mov edx, dword [0x4917f0]
mov esi, edx
inc esi
mov dword [0x4917f0], esi
imul ecx, edx
mov edx, dword [0x491e50]
xor ecx, edx
cmp eax, ecx
jne 0x42cf92
mov ax, word [0x492066]
movsx ecx, ax
xor ecx, 0xc779ab04
mov ax, word [0x492448]
mov dx, ax
inc edx
mov si, dx
mov word [0x492448], si
movsx edx, ax
or ecx, edx
mov edx, dword [0x491cf8]
and edx, ecx
mov dword [0x491cf8], edx
lea eax, [esp + 0x9c]
mov ecx, 2
mov dword [esp], eax
mov dword [esp + 4], 2
mov dword [esp + 0x60], ecx
call fcn.0040acf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42cfc7
jmp 0x42e46e
mov eax, 0xe383d96d
mov ecx, dword [0x491c84]
cmp eax, ecx
jg 0x42cfe9
mov eax, dword [0x491df4]
xor eax, 0x76acda69
mov dword [0x491df4], eax
lea eax, [esp + 0x90]
mov ecx, 3
mov dword [esp], eax
mov dword [esp + 4], 3
mov dword [esp + 0x5c], ecx
call fcn.0040acf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42d01e
jmp 0x42e46e
mov eax, 0x2b335c16
mov ecx, dword [0x491a8c]
not ecx
mov edx, dword [0x491d34]
sub ecx, edx
and ecx, 0x2131
mov si, word [0x492296]
mov dx, si
imul edx, ecx
mov si, dx
mov word [0x492296], si
mov ecx, esp
lea edx, [esp + 0xb4]
mov dword [ecx], edx
mov dword [esp + 0x58], eax
call fcn.004468f0
mov ecx, eax
sar ecx, 0x1f
shr ecx, 0x1b
mov edx, eax
add edx, ecx
and edx, 0xffffffe0
sub eax, edx
mov dword [esp + 0xcc], eax
mov eax, dword [0x4916e4]
and eax, 0x60224a36
and eax, 0xb4f9a034
mov ecx, dword [esp + 0x58]
cmp ecx, eax
jle 0x42d0d2
mov eax, 0x3dce8a70
mov ecx, dword [0x4917a4]
cmp eax, ecx
jl 0x42d0be
mov eax, dword [0x491c3c]
or eax, 0xfb095c5
mov dword [0x491c3c], eax
jmp 0x42d0cd
mov eax, dword [0x491b4c]
and eax, 0x89079272
mov dword [0x491b4c], eax
jmp 0x42d0d2
cmp dword [esp + 0xcc], 0x1f
jge 0x42d1b2
lea eax, [esp + 0xc0]
mov cx, word [0x4921f4]
mov dx, cx
dec edx
mov cx, dx
mov word [0x4921f4], cx
movsx edx, cx
mov esi, dword [0x491a74]
or esi, edx
mov dword [0x491a74], esi
mov edx, dword [esp + 0xcc]
mov esi, 0x1f
sub esi, edx
mov dword [esp + 0xcc], esi
mov edx, dword [0x491ddc]
and edx, 0x5438d9ec
mov dword [0x491ddc], edx
mov edx, dword [esp + 0xcc]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00420db0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42d15c
jmp 0x42e46e
lea eax, [esp + 0xb4]
mov ecx, dword [0x491d6c]
imul ecx, ecx, 0x53190de9
mov dword [0x491d6c], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00420db0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42d19d
jmp 0x42e46e
mov eax, dword [0x491958]
imul eax, eax, 0x670acbca
mov dword [0x491958], eax
jmp 0x42d1bd
mov dword [esp + 0xcc], 0
mov ax, word [0x492184]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x492184], ax
mov edx, dword [0x491544]
shl edx, 0xa
add edx, 0x2b504e9f
or ecx, edx
mov ax, word [0x49215a]
mov dx, ax
and edx, ecx
mov ax, dx
mov word [0x49215a], ax
mov ecx, dword [esp + 0xc4]
dec ecx
mov dword [esp + 0xd4], ecx
mov ax, word [0x492042]
movsx ecx, ax
add ecx, 0xb72a4d5
mov edx, dword [0x491a04]
xor edx, ecx
mov dword [0x491a04], edx
mov ecx, dword [esp + 0xb8]
dec ecx
mov dword [esp + 0xd0], ecx
mov ecx, dword [0x491834]
inc ecx
mov dword [0x491834], ecx
imul ecx, ecx, 0xd3432347
or ecx, 0xd2f4
mov ax, word [0x492272]
mov dx, ax
and edx, ecx
mov ax, dx
mov word [0x492272], ax
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0xd0]
sub ecx, edx
shl ecx, 5
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0xb4]
mov dword [edx], ecx
call fcn.00420db0
mov ecx, dword [0x4914a4]
sar ecx, 8
imul ecx, ecx, 0x71022bff
mov si, word [0x492354]
movsx edx, si
sub ecx, edx
mov edx, dword [0x4915f0]
add edx, ecx
mov dword [0x4915f0], edx
mov dword [esp + 0x54], eax
lea eax, [esp + 0xc0]
lea ecx, [esp + 0xb4]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00448c70
cmp eax, 0
jl 0x42d3bc
mov eax, 0x45b28e42
mov cx, word [0x4922f8]
mov dx, cx
xor edx, 0x7eaf
mov cx, dx
mov word [0x4922f8], cx
mov edx, dword [esp + 0xd4]
mov esi, dword [esp + 0xd0]
sub edx, esi
mov esi, dword [esp + 0xb0]
mov edi, dword [esi + edx*4]
inc edi
mov dword [esi + edx*4], edi
mov edx, dword [0x491910]
cmp eax, edx
je 0x42d332
mov eax, dword [0x4914a0]
or eax, 0xaf2a8bb5
mov dword [0x4914a0], eax
jmp 0x42d384
mov ax, word [0x49206a]
movsx ecx, ax
imul ecx, ecx, 0xba4c0538
cmp ecx, 0xe91aef49
jl 0x42d370
mov eax, 0x74a82d0d
mov ecx, dword [0x4917cc]
xor ecx, 0x21be619c
cmp eax, ecx
je 0x42d36b
jmp 0x42d36b
jmp 0x42d37f
mov eax, dword [0x491b20]
add eax, 0xa5e88aa0
mov dword [0x491b20], eax
jmp 0x42d384
mov eax, esp
lea ecx, [esp + 0xb4]
mov dword [eax + 8], ecx
lea ecx, [esp + 0xc0]
mov dword [eax + 4], ecx
mov dword [eax], ecx
call fcn.004420c0
mov ecx, dword [0x491bc4]
and ecx, 0x64776a31
mov dword [0x491bc4], ecx
mov dword [esp + 0x50], eax
jmp 0x42d2b0
mov ax, word [0x491f88]
mov cx, ax
imul ecx, ecx, 0xf171d4a1
mov ax, cx
mov word [0x491f88], ax
mov ecx, dword [esp + 0xd4]
mov edx, dword [esp + 0xd0]
sub ecx, edx
shl ecx, 5
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0xb4]
mov dword [edx], ecx
call fcn.0041e450
mov ecx, dword [0x491c8c]
add ecx, 0x68d59d69
mov dword [0x491c8c], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0xd8], ecx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xd8]
cmp eax, dword [esp + 0xd0]
jle 0x42e1e5
mov eax, 0xd38b448d
mov ecx, dword [0x491a0c]
sar ecx, 5
cmp eax, ecx
jne 0x42d46d
mov eax, dword [0x4914b4]
mov ecx, eax
inc ecx
mov dword [0x4914b4], ecx
mov dx, word [0x492414]
mov cx, dx
imul ecx, eax
mov dx, cx
mov word [0x492414], dx
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xc8]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0xbc]
cmp eax, dword [edx + ecx*4]
jb 0x42d4b9
mov eax, dword [esp + 0xd8]
sub eax, dword [esp + 0xd0]
sub eax, 1
mov ecx, dword [esp + 0xb0]
mov dword [ecx + eax*4], 0xffffffff
jmp 0x42dab8
mov eax, 0x20e659b6
mov ecx, dword [0x491718]
inc ecx
mov dword [0x491718], ecx
mov edx, dword [0x491d30]
mov esi, edx
dec esi
mov dword [0x491d30], esi
or ecx, edx
mov edx, dword [0x49187c]
imul edx, ecx
mov dword [0x49187c], edx
mov ecx, dword [0x491ecc]
add ecx, 0xec7c006e
mov dword [0x491ecc], ecx
mov ecx, dword [0x4919a4]
and ecx, 0xb61d32ce
cmp eax, ecx
jl 0x42d529
mov eax, dword [0x491898]
and eax, 0xcaaa78e8
mov ecx, dword [0x4915ec]
sub ecx, eax
mov dword [0x4915ec], ecx
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x74], eax
mov eax, dword [0x4917cc]
and eax, 0x3007e292
mov dword [0x4917cc], eax
movzx eax, word [esp + 0x74]
mov dword [esp + 0x7c], eax
mov eax, dword [0x4918e8]
mov ecx, eax
dec ecx
mov dword [0x4918e8], ecx
mov ecx, dword [0x491da0]
imul ecx, eax
mov dword [0x491da0], ecx
movzx eax, word [esp + 0x76]
mov dword [esp + 0x78], eax
mov eax, dword [0x491ad4]
mov ecx, eax
dec ecx
mov dword [0x491ad4], ecx
add eax, 0xd4019b23
xor eax, 0x5f60b2be
mov ecx, dword [0x491cd8]
and ecx, eax
mov dword [0x491cd8], ecx
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xc8]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0x78]
xor edx, edx
div ecx
mov dword [esp + 0x88], eax
mov si, word [0x49242c]
movsx eax, si
imul eax, eax, 0xf2f80dfd
mov ecx, dword [0x491794]
add ecx, eax
mov dword [0x491794], ecx
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xc8]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x88]
imul ecx, edx
sub eax, ecx
mov dword [esp + 0x80], eax
mov dword [0x4919a0], 0x68026583
mov eax, dword [esp + 0x80]
shl eax, 0x10
mov dword [esp + 0x80], eax
mov si, word [0x4920da]
mov ax, si
or eax, 0xfbf9
mov si, ax
mov word [0x4920da], si
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xc8]
movzx eax, word [ecx + eax*4 - 2]
mov ecx, dword [esp + 0x80]
or ecx, eax
mov dword [esp + 0x80], ecx
mov eax, dword [0x491aa8]
and eax, 0xc7aade43
mov dword [0x491aa8], eax
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x7c]
imul eax, ecx
mov dword [esp + 0x70], eax
mov eax, dword [0x491ee4]
or eax, 0xf44f2fd
cmp eax, 0xa6558d1a
jl 0x42d6a9
mov eax, dword [0x491d70]
add eax, 0xd88bdc59
mov dword [0x491d70], eax
jmp 0x42d6b8
mov eax, dword [0x491b60]
and eax, 0xaf84c6cc
mov dword [0x491b60], eax
mov eax, dword [esp + 0x80]
cmp eax, dword [esp + 0x70]
jae 0x42d7ab
mov eax, 0x1f55895a
mov ecx, dword [0x491aac]
cmp eax, ecx
jl 0x42d6eb
mov eax, dword [0x491498]
add eax, 0xef5067cb
mov dword [0x491498], eax
mov eax, dword [esp + 0x88]
dec eax
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x80]
add ecx, eax
mov dword [esp + 0x80], ecx
mov eax, dword [0x491b7c]
mov ecx, eax
dec ecx
mov dword [0x491b7c], ecx
add eax, 0xf48384c3
mov ecx, dword [0x4918c0]
xor eax, ecx
mov ecx, dword [0x491ad0]
and ecx, eax
mov dword [0x491ad0], ecx
xor eax, eax
mov cl, al
mov eax, dword [esp + 0x80]
cmp eax, dword [esp + 0x74]
mov byte [esp + 0x4b], cl
jb 0x42d762
mov eax, dword [esp + 0x80]
cmp eax, dword [esp + 0x70]
setb cl
mov byte [esp + 0x4b], cl
mov al, byte [esp + 0x4b]
test al, 1
jne 0x42d773
jmp 0x42d79b
mov eax, dword [esp + 0x88]
add eax, 0xffffffff
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x74]
add eax, dword [esp + 0x80]
mov dword [esp + 0x80], eax
jmp 0x42d737
mov eax, dword [0x491e10]
imul eax, eax, 0x2818920
mov dword [0x491e10], eax
mov eax, dword [0x4914a4]
or eax, 0x30773094
mov dword [0x4914a4], eax
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x80]
sub ecx, eax
mov dword [esp + 0x80], ecx
mov eax, dword [0x491da4]
sar eax, 8
mov dx, word [0x49205a]
mov cx, dx
dec ecx
mov si, cx
mov word [0x49205a], si
movsx ecx, dx
sub eax, ecx
mov ecx, dword [0x491ddc]
or ecx, eax
mov dword [0x491ddc], ecx
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x78]
xor edx, edx
div ecx
mov dword [esp + 0x8c], eax
mov eax, dword [0x491bf4]
add eax, 0x5f5fceaf
mov dword [0x491bf4], eax
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x8c]
imul ecx, edx
sub eax, ecx
mov dword [esp + 0x84], eax
mov si, word [0x4920b2]
mov ax, si
mov ecx, eax
inc ecx
mov si, cx
mov word [0x4920b2], si
mov si, word [0x4920ca]
mov cx, si
sub ecx, eax
mov si, cx
mov word [0x4920ca], si
mov eax, dword [esp + 0x84]
shl eax, 0x10
mov dword [esp + 0x84], eax
mov eax, dword [0x4916fc]
and eax, 0xf51d3a42
mov dword [0x4916fc], eax
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xc8]
movzx eax, word [ecx + eax*4 - 4]
mov ecx, dword [esp + 0x84]
or ecx, eax
mov dword [esp + 0x84], ecx
mov eax, dword [0x491b78]
xor eax, 0xe3453eb3
mov dword [0x491b78], eax
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x7c]
imul eax, ecx
mov dword [esp + 0x70], eax
mov eax, dword [0x49148c]
mov si, word [0x492026]
mov cx, si
sub ecx, eax
mov si, cx
mov word [0x492026], si
mov eax, dword [esp + 0x84]
cmp eax, dword [esp + 0x70]
jae 0x42da00
mov ax, word [0x492084]
mov cx, ax
add ecx, 0x7b50a9d1
mov ax, cx
mov word [0x492084], ax
mov ecx, dword [esp + 0x8c]
dec ecx
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x84]
add edx, ecx
mov dword [esp + 0x84], edx
mov ax, word [0x492212]
movsx ecx, ax
add ecx, 0xa182b0b3
and ecx, 0x5e055c6b
mov edx, dword [0x49149c]
mov esi, edx
inc esi
mov dword [0x49149c], esi
xor edx, 0x3d4cc47e
cmp ecx, edx
jg 0x42d988
mov eax, dword [0x491e8c]
add eax, 0x30cdd784
xor eax, 0x33b2b251
mov ecx, dword [0x491778]
and ecx, eax
mov dword [0x491778], ecx
jmp 0x42d98d
xor eax, eax
mov cl, al
mov eax, dword [esp + 0x84]
cmp eax, dword [esp + 0x74]
mov byte [esp + 0x4a], cl
jb 0x42d9b8
mov eax, dword [esp + 0x84]
cmp eax, dword [esp + 0x70]
setb cl
mov byte [esp + 0x4a], cl
mov al, byte [esp + 0x4a]
test al, 1
jne 0x42d9c9
jmp 0x42d9f1
mov eax, dword [esp + 0x8c]
add eax, 0xffffffff
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x74]
add eax, dword [esp + 0x84]
mov dword [esp + 0x84], eax
jmp 0x42d98d
mov eax, dword [0x4919ac]
add eax, 0xa80b3580
mov dword [0x4919ac], eax
mov eax, 0xa48a331f
mov cx, word [0x4922da]
mov dx, cx
xor edx, 0x8370
mov cx, dx
mov word [0x4922da], cx
mov edx, dword [esp + 0x70]
mov esi, dword [esp + 0x84]
sub esi, edx
mov dword [esp + 0x84], esi
mov cx, word [0x492220]
mov dx, cx
and edx, 0x802
mov cx, dx
mov word [0x492220], cx
mov edx, dword [esp + 0x88]
shl edx, 0x10
mov esi, dword [esp + 0x8c]
or edx, esi
mov esi, dword [esp + 0xd8]
mov edi, dword [esp + 0xd0]
sub esi, edi
mov edi, dword [esp + 0xb0]
mov dword [edi + esi*4 - 4], edx
mov edx, dword [0x491df0]
shl edx, 5
cmp eax, edx
jl 0x42dab3
mov eax, 0xb58f0788
mov ecx, dword [0x49151c]
cmp eax, ecx
jge 0x42daae
mov eax, dword [0x491608]
add eax, 0x2d140ad3
mov dword [0x491608], eax
jmp 0x42dab3
jmp 0x42dab8
mov eax, dword [0x491bb8]
imul eax, eax, 0xffcbb3be
mov dword [0x491bb8], eax
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xd0]
sub eax, ecx
mov ecx, dword [esp + 0xb0]
mov edx, dword [ecx + eax*4 - 4]
inc edx
mov dword [ecx + eax*4 - 4], edx
mov eax, dword [0x491904]
imul eax, eax, 0xb62ffcf5
mov dword [0x491904], eax
mov eax, 0x15eb1593
mov ecx, dword [0x491578]
and ecx, 0x82ad0b75
xor ecx, 0x2b2b925
cmp eax, ecx
jg 0x42db2f
mov ax, word [0x491f78]
mov cx, ax
or ecx, 0x55b7
mov ax, cx
mov word [0x491f78], ax
lea eax, [esp + 0x9c]
xor ecx, ecx
mov edx, dword [esp + 0xd8]
mov esi, dword [esp + 0xd0]
sub edx, esi
mov esi, dword [esp + 0xb0]
mov edi, dword [esi + edx*4 - 4]
dec edi
mov dword [esi + edx*4 - 4], edi
mov edx, dword [0x49151c]
xor edx, 0xf59eb171
mov dword [0x49151c], edx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 0x44], ecx
call fcn.00426cf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42db93
jmp 0x42e46e
mov eax, dword [0x491c28]
mov ecx, dword [0x4919e0]
not ecx
add eax, ecx
mov ecx, dword [0x491c78]
sub ecx, eax
mov dword [0x491c78], ecx
cmp dword [esp + 0xd0], 1
jge 0x42dbc9
xor eax, eax
mov dword [esp + 0x40], eax
jmp 0x42dbe1
mov eax, dword [esp + 0xd0]
sub eax, 1
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x9c]
mov edx, dword [esp + 0xa4]
mov dword [edx], eax
mov dword [0x491710], 0x43c1003
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xbc]
mov eax, dword [edx + eax*4]
mov edx, dword [esp + 0xa4]
mov dword [edx + 4], eax
mov si, word [0x492334]
mov ax, si
dec eax
mov di, ax
mov word [0x492334], di
movsx eax, si
add eax, 0x694ebaaa
or eax, 0xe474f354
mov edx, dword [0x491890]
sub edx, eax
mov dword [0x491890], edx
mov eax, dword [esp + 0xd8]
sub eax, dword [esp + 0xd0]
sub eax, 1
mov edx, dword [esp + 0xb0]
mov eax, dword [edx + eax*4]
mov dword [esp], ecx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004507b0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42dc8a
jmp 0x42e46e
mov eax, 0x6446b873
mov ecx, dword [0x491858]
dec ecx
mov dword [0x491858], ecx
xor ecx, 0x3177bcd5
cmp eax, ecx
jl 0x42dcb9
mov eax, dword [0x4914a4]
xor eax, 0x992aaa30
mov dword [0x4914a4], eax
lea eax, [esp + 0x90]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 0x3c], ecx
call fcn.00426cf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42dceb
jmp 0x42e46e
mov eax, dword [0x491ec4]
imul eax, eax, 0x11060000
mov dword [0x491ec4], eax
cmp dword [esp + 0xd8], 2
jge 0x42dd14
xor eax, eax
mov dword [esp + 0x38], eax
jmp 0x42dd2c
mov eax, dword [esp + 0xd8]
sub eax, 2
mov ecx, dword [esp + 0xc8]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x98]
mov dword [ecx], eax
mov dx, word [0x491fd8]
movsx eax, dx
or eax, 0xb0121103
mov ecx, dword [0x49174c]
imul ecx, eax
mov dword [0x49174c], ecx
cmp dword [esp + 0xd8], 1
jge 0x42dd70
xor eax, eax
mov dword [esp + 0x34], eax
jmp 0x42dd88
mov eax, dword [esp + 0xd8]
sub eax, 1
mov ecx, dword [esp + 0xc8]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x98]
mov dword [ecx + 4], eax
mov dx, word [0x49205e]
mov ax, dx
dec eax
mov dx, ax
mov word [0x49205e], dx
movsx eax, dx
imul eax, eax, 0xc090b24c
mov ecx, 0xfd521d53
sub ecx, eax
mov eax, dword [0x49158c]
add eax, 0x4f5058ba
cmp ecx, eax
jle 0x42de38
mov eax, dword [0x491a38]
mov ecx, eax
dec ecx
mov dword [0x491a38], ecx
imul eax, eax, 0x5d9003f4
xor eax, 0xb45dc17e
mov ecx, dword [0x491bd8]
mov dx, word [0x49240c]
mov si, dx
dec esi
mov dx, si
mov word [0x49240c], dx
movsx esi, dx
sub ecx, esi
cmp eax, ecx
jl 0x42de33
mov ax, word [0x4921da]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x4921da], dx
movsx ecx, ax
mov esi, dword [0x4917bc]
add esi, ecx
mov dword [0x4917bc], esi
jmp 0x42de5a
mov eax, dword [0x4914c8]
mov ecx, eax
inc ecx
mov dword [0x4914c8], ecx
or eax, 0x6ffea2d5
mov ecx, dword [0x491e5c]
imul ecx, eax
mov dword [0x491e5c], ecx
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xc8]
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0x98]
mov dword [ecx + 8], eax
mov eax, dword [0x491634]
and eax, 0x4b0fdee2
mov dword [0x491634], eax
lea eax, [esp + 0x9c]
lea ecx, [esp + 0x90]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00448c70
cmp eax, 0
jg 0x42daf8
mov eax, dword [0x491c1c]
mov ecx, 0x1ac30357
sub ecx, eax
xor ecx, 0xc7107470
mov eax, dword [0x491d50]
imul eax, eax, 0xdde8fa7d
cmp ecx, eax
jg 0x42dee0
mov eax, dword [0x491978]
add eax, 0x91f7f3b7
mov dword [0x491978], eax
jmp 0x42def8
mov ax, word [0x4920b2]
mov cx, ax
add ecx, 0xf9bd88cd
mov ax, cx
mov word [0x4920b2], ax
lea eax, [esp + 0x9c]
lea ecx, [esp + 0xb4]
mov edx, dword [esp + 0xd8]
sub edx, dword [esp + 0xd0]
sub edx, 1
mov esi, dword [esp + 0xb0]
mov edx, dword [esi + edx*4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004507b0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42df46
jmp 0x42e46e
lea eax, [esp + 0x9c]
mov cx, word [0x492196]
mov dx, cx
add edx, 0xf200a824
mov cx, dx
mov word [0x492196], cx
mov edx, dword [esp + 0xd8]
sub edx, dword [esp + 0xd0]
sub edx, 1
shl edx, 5
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00420db0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42df9c
jmp 0x42e46e
mov eax, dword [0x491e78]
sar eax, 1
imul eax, eax, 0x8158d520
imul eax, eax, 0xc9e6bcb0
cmp eax, 0x2636df5a
jl 0x42dfd7
mov eax, dword [0x491dd8]
mov ecx, eax
inc ecx
mov dword [0x491dd8], ecx
mov ecx, dword [0x491de8]
add ecx, eax
mov dword [0x491de8], ecx
lea eax, [esp + 0xc0]
lea ecx, [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004420c0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42e00a
jmp 0x42e46e
lea eax, [esp + 0xc0]
xor ecx, ecx
mov edx, dword [0x491978]
imul edx, edx, 0xbaa69690
mov dword [0x491978], edx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 0x30], ecx
call fcn.0042a180
cmp eax, 0
jge 0x42e193
lea eax, [esp + 0x9c]
lea ecx, [esp + 0xb4]
mov edx, dword [0x491dc0]
add edx, 0xfc5f243a
mov esi, dword [0x491c20]
sub esi, edx
mov dword [0x491c20], esi
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0042ebf0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42e08b
jmp 0x42e46e
lea eax, [esp + 0x9c]
mov cx, word [0x492262]
mov dx, cx
xor edx, 0x5ac1
mov cx, dx
mov word [0x492262], cx
mov edx, dword [esp + 0xd8]
sub edx, dword [esp + 0xd0]
sub edx, 1
shl edx, 5
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00420db0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42e0e1
jmp 0x42e46e
lea eax, [esp + 0xc0]
lea ecx, [esp + 0x9c]
mov dx, word [0x4921ac]
mov si, dx
dec esi
mov dx, si
mov word [0x4921ac], dx
movsx esi, dx
add esi, 0xb62e903c
mov dword [0x491900], esi
mov dword [esp], eax
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0042edb0
mov dword [esp + 0xdc], eax
cmp eax, 0
je 0x42e138
jmp 0x42e46e
mov ax, word [0x491fa2]
movsx ecx, ax
mov ax, word [0x4923a8]
movsx edx, ax
imul edx, edx, 0x93a9d720
sub ecx, edx
mov edx, dword [0x491748]
imul edx, ecx
mov dword [0x491748], edx
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0xd0]
sub ecx, edx
mov edx, dword [esp + 0xb0]
mov esi, dword [edx + ecx*4 - 4]
dec esi
mov dword [edx + ecx*4 - 4], esi
mov ecx, dword [0x49171c]
shl ecx, 0x1c
lea ecx, [ecx + ecx*4]
mov dword [0x49171c], ecx
mov ax, word [0x4923f6]
movsx ecx, ax
not ecx
mov edx, dword [0x491b28]
mov esi, edx
dec esi
mov dword [0x491b28], esi
sub ecx, edx
cmp ecx, 0xf384706c
je 0x42e1ca
mov eax, dword [0x4916a0]
add eax, 0x515a3134
mov dword [0x4916a0], eax
jmp 0x42e1cf
mov eax, dword [esp + 0xd8]
add eax, 0xffffffff
mov dword [esp + 0xd8], eax
jmp 0x42d41e
mov eax, 0xc5b57bcb
mov ecx, dword [0x491ba4]
mov edx, ecx
dec edx
mov dword [0x491ba4], edx
or ecx, 0x770046e7
cmp eax, ecx
jg 0x42e224
mov ax, word [0x4920f6]
movsx ecx, ax
mov edx, dword [0x491dc8]
and ecx, edx
and ecx, 0x40a8090e
mov dword [0x491dc8], ecx
cmp dword [esp + 0xe0], 0
je 0x42e302
mov eax, 0x15453db0
mov ecx, dword [0x4914b8]
or ecx, 0xaa6d9671
mov dword [0x4914b8], ecx
mov ecx, dword [esp + 0xe0]
mov edx, esp
lea esi, [esp + 0xa8]
mov dword [edx + 4], esi
mov dword [edx], ecx
mov dword [esp + 0x2c], eax
call fcn.0042ebf0
mov di, word [0x492082]
movsx ecx, di
mov di, word [0x4920aa]
mov dx, di
dec edx
mov di, dx
mov word [0x4920aa], di
movsx edx, di
imul ecx, edx
xor ecx, 0x471e1ef6
mov edx, dword [0x4918f4]
sub edx, ecx
mov dword [0x4918f4], edx
mov ecx, dword [esp + 0xe8]
mov ecx, dword [ecx]
mov edx, dword [esp + 0xec]
mov edx, dword [edx]
imul ecx, edx
mov edx, dword [esp + 0xe0]
mov dword [edx], ecx
mov ecx, dword [0x491d08]
mov edx, ecx
dec edx
mov dword [0x491d08], edx
sub ecx, 0xb82ded56
sub ecx, 0xfcedbb6e
mov edx, dword [esp + 0x2c]
cmp edx, ecx
mov dword [esp + 0x28], eax
je 0x42e2fd
mov eax, dword [0x491c28]
mov ecx, dword [0x491d18]
imul ecx, eax
mov dword [0x491d18], ecx
jmp 0x42e302
mov ax, word [0x4922c2]
mov cx, ax
imul ecx, ecx, 0xd5d96d6e
mov ax, cx
mov word [0x4922c2], ax
cmp dword [esp + 0xe4], 0
je 0x42e45e
xor eax, eax
mov ecx, dword [0x491908]
imul ecx, ecx, 0xcdb35eb4
mov dword [0x491908], ecx
mov ecx, dword [esp + 0xcc]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0xc0]
mov dword [edx], ecx
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], ecx
call fcn.0041e450
mov ecx, dword [0x491dbc]
add ecx, 0xdd4372fe
mov dword [0x491dbc], ecx
mov ecx, dword [esp + 0xe4]
mov edx, esp
mov esi, dword [esp + 0x20]
mov dword [edx + 4], esi
mov dword [edx], ecx
mov dword [esp + 0x1c], eax
call fcn.0042ebf0
mov di, word [0x491ff4]
mov cx, di
or ecx, 0xddfb
mov di, cx
mov word [0x491ff4], di
mov ecx, dword [esp + 0xe8]
mov ecx, dword [ecx]
mov edx, dword [esp + 0xe4]
mov dword [edx], ecx
mov ecx, dword [0x491d24]
inc ecx
mov dword [0x491d24], ecx
or ecx, 0x61341d62
mov edx, dword [0x4915e8]
sub edx, ecx
mov dword [0x4915e8], edx
mov ecx, dword [esp + 0xe4]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 0x18], eax
call fcn.0042a180
cmp eax, 0
jne 0x42e409
mov eax, dword [esp + 0xe4]
mov dword [eax], 1
mov eax, dword [0x491e00]
inc eax
mov dword [0x491e00], eax
sub eax, 0xdc25899e
and eax, 0x6d98d1c7
cmp eax, 0x3f192953
jg 0x42e44a
mov ax, word [0x492420]
movsx ecx, ax
mov edx, dword [0x4916d0]
lea ecx, [edx + ecx*8 + 0x10e1d57f]
mov dword [0x4916d0], ecx
jmp 0x42e459
mov eax, dword [0x491b20]
and eax, 0x8420cb43
mov dword [0x491b20], eax
jmp 0x42e45e
mov eax, dword [0x491d70]
imul eax, eax, 0xfab7ac2d
mov dword [0x491d70], eax
mov eax, esp
lea ecx, [esp + 0x90]
mov dword [eax + 0x10], ecx
lea ecx, [esp + 0x9c]
mov dword [eax + 0xc], ecx
lea ecx, [esp + 0xa8]
mov dword [eax + 8], ecx
lea ecx, [esp + 0xb4]
mov dword [eax + 4], ecx
lea ecx, [esp + 0xc0]
mov dword [eax], ecx
mov dword [eax + 0x14], 0
call fcn.00424080
mov eax, dword [0x491cb4]
or eax, 0xd8e22163
cmp eax, 0xea6e123e
je 0x42e4d9
mov ax, word [0x492262]
movsx ecx, ax
mov edx, dword [0x491be0]
or edx, ecx
mov dword [0x491be0], edx
mov eax, dword [esp + 0xdc]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0xf0]
add esp, 0xf4
pop esi
pop edi
pop ebx
ret