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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x590
mov eax, 0xbbd9ea36
mov cx, word [0x491a82]
mov dx, cx
xor edx, 0x73ad
mov cx, dx
mov word [0x491a82], cx
lea ecx, [esp + 0x550]
mov dword [esp + 0x110], eax
call fcn.00441d70
mov ecx, dword [0x49a858]
mov edx, dword [esp + 0x110]
sub edx, ecx
cmp edx, 0x232006a8
mov dword [esp + 0x10c], eax
jne 0x429d5c
mov eax, dword [0x495cc4]
xor eax, 0xdb46e3bf
mov dword [0x495cc4], eax
mov eax, 0x80262af6
mov ecx, dword [0x4975a4]
imul ecx, ecx, 0x4000404a
mov dword [0x4975a4], ecx
mov ecx, dword [0x49b6a8]
dec ecx
mov dword [0x49b6a8], ecx
and ecx, 0xa6d6551f
and ecx, 0x7a777fd4
cmp eax, ecx
je 0x429da8
mov eax, dword [0x493fd4]
add eax, 0xff3fddff
mov dword [0x493fd4], eax
jmp 0x429db7
mov eax, dword [0x4967d0]
add eax, 0x30790359
mov dword [0x4967d0], eax
mov eax, dword [0x49a16c]
dec eax
mov dword [0x49a16c], eax
mov ecx, dword [0x498f54]
or ecx, eax
mov dword [0x498f54], ecx
mov dword [esp + 0x114], 0
mov dx, word [0x49149c]
movsx eax, dx
not eax
mov ecx, dword [0x499c64]
mov esi, ecx
dec esi
mov dword [0x499c64], esi
lea eax, [eax + ecx + 0x34508a5d]
mov ecx, dword [0x494b64]
imul ecx, eax
mov dword [0x494b64], ecx
mov dword [0x49c824], 0x94
mov eax, dword [0x494fdc]
and eax, 0xb3877455
mov dword [0x494fdc], eax
mov eax, dword [0x48ef00]
mov ecx, esp
mov dword [ecx], 0x49c824
call eax
sub esp, 4
mov ecx, dword [0x49c178]
and ecx, 0xe64783ca
mov dword [0x49c178], ecx
mov dword [esp + 0x108], eax
call fcn.004029c0
mov dword [0x49d0e4], eax
mov eax, dword [0x4990b8]
dec eax
mov dword [0x4990b8], eax
imul eax, eax, 0xafc18ed0
sub eax, 0xe8622e5
cmp eax, 0x7b64fb9c
jge 0x429ea2
mov eax, dword [0x49a83c]
xor eax, 0xffffffff
cmp eax, 0x3320b6b0
jl 0x429e9d
mov eax, dword [0x499264]
or eax, 0x5ccd6bb0
mov dword [0x499264], eax
jmp 0x429ea2
call fcn.00419b60
mov dword [0x49d0e8], eax
mov eax, dword [0x498aac]
dec eax
mov dword [0x498aac], eax
add eax, 0x88c2635a
add eax, 0x94560ad7
cmp eax, 0x374284fa
jne 0x429edb
mov eax, dword [0x494c9c]
or eax, 0x576044c2
mov dword [0x494c9c], eax
mov eax, dword [0x49d0e4]
cmp eax, 0
je 0x42a14b
mov eax, 0xd4ab1878
mov cx, word [0x490972]
mov dx, cx
imul edx, edx, 0x38eeabc3
mov cx, dx
mov word [0x490972], cx
mov edx, esp
lea esi, [esp + 0x125]
mov dword [edx], esi
mov dword [esp + 0x104], eax
call fcn.004100b0
mov dword [esp + 0x120], eax
mov eax, dword [0x496608]
xor eax, 0x6de173f7
mov dword [0x496608], eax
mov eax, dword [esp + 0x120]
mov byte [esp + eax + 0x125], 0x5c
mov eax, dword [0x49a554]
add eax, 0x2c90f20
mov dword [0x49a554], eax
mov eax, dword [esp + 0x120]
inc eax
mov dword [esp + 0x120], eax
mov cx, word [0x48f37a]
movsx eax, cx
sub eax, 0x22f94fe2
xor eax, 0xe797229f
mov edx, dword [esp + 0x104]
cmp edx, eax
je 0x429f95
mov eax, dword [0x496f04]
imul eax, eax, 0x10490177
mov dword [0x496f04], eax
mov eax, 0xd5487cde
mov ecx, dword [esp + 0x120]
mov byte [esp + ecx + 0x125], 0
mov ecx, dword [0x494600]
xor ecx, 0x7ea7f843
mov dword [0x494600], ecx
mov ecx, dword [0x49d128]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x125]
mov dword [edx], ecx
mov dword [esp + 0x100], eax
mov dword [esp + 0xfc], ecx
call fcn.004554e0
mov ecx, dword [0x49c088]
imul ecx, ecx, 0xe16d6ad4
mov dword [0x49c088], ecx
mov ecx, dword [0x48ef48]
mov edx, esp
mov esi, dword [esp + 0xfc]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0xf8], eax
call ecx
sub esp, 8
mov ecx, dword [0x4962b0]
imul ecx, ecx, 0xe1cc39eb
mov dword [0x4962b0], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x1fef
mov dword [esp + 0xf4], eax
call fcn.0042c7c0
mov dword [esp + 0x58c], eax
mov eax, dword [0x497228]
xor eax, 0xda06
mov di, word [0x491ada]
mov cx, di
add ecx, eax
mov di, cx
mov word [0x491ada], di
mov eax, dword [esp + 0x58c]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0xfc]
mov dword [ecx], eax
call fcn.004554e0
mov ecx, dword [0x497f08]
dec ecx
mov dword [0x497f08], ecx
or ecx, 0x7e78f1e2
mov edx, dword [0x49606c]
and edx, ecx
mov dword [0x49606c], edx
mov ecx, dword [esp + 0x58c]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xf0], eax
call fcn.00450bc0
mov eax, dword [0x497150]
sub eax, 0xa1797844
sub eax, 0x474dcafe
mov ecx, dword [esp + 0x100]
cmp ecx, eax
jl 0x42a137
mov eax, 0xe647ac3e
mov ecx, dword [0x494d24]
imul ecx, ecx, 0xa55c52fe
add ecx, 0x333f2ee5
cmp eax, ecx
jl 0x42a132
mov eax, 0x83576987
mov ecx, dword [0x49aa48]
mov edx, ecx
inc edx
mov dword [0x49aa48], edx
sub eax, ecx
or eax, 0x1764048f
cmp eax, 0xc8441b8d
jle 0x42a12d
jmp 0x42a12d
jmp 0x42a132
jmp 0x42a146
mov eax, dword [0x49b03c]
and eax, 0x195086ba
mov dword [0x49b03c], eax
jmp 0x42a1a1
mov eax, dword [0x494ffc]
shl eax, 6
and eax, 0xa100
xor eax, 0x4fc2
mov cx, ax
mov word [0x4910e2], cx
mov byte [esp + 0x125], 0
mov cx, word [0x491d2c]
mov ax, cx
mov edx, eax
inc edx
mov cx, dx
mov word [0x491d2c], cx
mov cx, word [0x491674]
mov dx, cx
xor eax, edx
xor eax, 0xb452
mov cx, ax
mov word [0x491674], cx
mov eax, dword [0x498aa8]
add eax, 0x79991752
mov ecx, dword [0x4991d4]
imul ecx, eax
mov dword [0x4991d4], ecx
mov eax, esp
mov dword [eax + 4], 0x1f
mov dword [eax], 0x28b7
call fcn.0042c7c0
mov dword [esp + 0x588], eax
mov eax, dword [0x495298]
shr eax, 2
and eax, 0x117bd5c8
mov ecx, dword [0x49508c]
or ecx, eax
mov dword [0x49508c], ecx
mov eax, dword [esp + 0x588]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x550]
call fcn.00435b00
sub esp, 4
mov ecx, dword [0x495600]
add ecx, 0xe99f458e
mov dword [0x495600], ecx
mov ecx, dword [esp + 0x588]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xec], eax
call fcn.00450bc0
mov eax, dword [0x496868]
mov si, word [0x48f584]
mov cx, si
inc ecx
mov di, cx
mov word [0x48f584], di
movsx ecx, si
or ecx, 0x33c97363
cmp eax, ecx
je 0x42a2e5
mov ax, word [0x48f978]
movsx ecx, ax
shl ecx, 9
add ecx, 0xc5468dcd
cmp ecx, 0xd912ddbf
jle 0x42a2a0
mov ax, word [0x491534]
mov cx, ax
add ecx, 0x911eefc1
mov ax, cx
mov word [0x491534], ax
jmp 0x42a2e0
mov eax, 0xb4891e64
mov ecx, dword [0x49c5a0]
shl ecx, 0xa
xor ecx, 0x82441053
mov dx, word [0x4935be]
movsx esi, dx
sar esi, 4
mov edi, dword [0x494b58]
xor edi, 0xffffffff
sub eax, edi
or esi, eax
cmp ecx, esi
jl 0x42a2db
jmp 0x42a2db
jmp 0x42a2e0
jmp 0x42a334
mov eax, 0x1ae9ff76
mov ecx, dword [0x4994a4]
shl ecx, 3
cmp eax, ecx
jle 0x42a30f
mov eax, dword [0x496a40]
add eax, 0xd2e752d3
mov dword [0x496a40], eax
jmp 0x42a32f
mov eax, dword [0x4972c0]
mov ecx, eax
dec ecx
mov dword [0x4972c0], ecx
mov ecx, dword [0x493c68]
lea eax, [eax + ecx - 0xda4df80]
mov dword [0x493c68], eax
jmp 0x42a334
lea eax, [esp + 0x550]
lea ecx, [esp + 0x125]
mov dword [esp + 0xe8], ecx
mov ecx, eax
call fcn.0040ef30
lea ecx, [esp + 0x550]
mov dword [esp + 0xe4], eax
call fcn.00443800
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0xe0], ecx
call fcn.00437df0
cmp eax, 0
je 0x42a483
mov eax, dword [0x498ae0]
add eax, 0x1d6083cc
mov dword [0x498ae0], eax
mov dword [esp + 0x114], 1
mov cx, word [0x493076]
movsx eax, cx
not eax
mov edx, dword [0x49c79c]
add eax, edx
cmp eax, 0x4a90f252
jle 0x42a407
mov ax, word [0x49174c]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x49174c], ax
movsx ecx, ax
add ecx, 0x90873f4f
or ecx, 0x1cd90052
mov edx, dword [0x497138]
xor edx, ecx
mov dword [0x497138], edx
mov eax, dword [0x48eed4]
mov ecx, esp
lea edx, [esp + 0x125]
mov dword [ecx], edx
mov dword [esp + 0xdc], edx
call eax
sub esp, 4
mov word [0x492e76], 0x7a1e
mov ecx, dword [esp + 0x120]
mov byte [esp + ecx + 0x125], 0
mov ecx, dword [0x4983e8]
xor ecx, 0x1e02456a
mov dword [0x4983e8], ecx
mov ecx, dword [0x48ef4c]
mov edx, esp
mov esi, dword [esp + 0xdc]
mov dword [edx], esi
mov dword [esp + 0xd8], eax
call ecx
sub esp, 4
mov ecx, dword [0x496d70]
add ecx, 0xad7b05c8
mov dword [0x493ef4], ecx
mov dword [esp + 0xd4], eax
mov eax, 0xefbeddd7
mov ecx, dword [0x497a8c]
and ecx, 0x7678cd38
mov edx, dword [0x49aa24]
sub edx, ecx
mov dword [0x49aa24], edx
mov ecx, esp
lea edx, [esp + 0x125]
mov dword [ecx], edx
mov dword [esp + 0xd0], eax
call fcn.004100b0
mov ecx, dword [0x49815c]
not ecx
and ecx, 0x7c204db2
mov dword [0x495884], ecx
mov byte [esp + 0x128], 0
mov ecx, dword [0x49ab08]
mov edx, ecx
dec edx
mov dword [0x49ab08], edx
add ecx, 0x8e05c93
mov edx, dword [esp + 0xd0]
cmp edx, ecx
mov dword [esp + 0xcc], eax
jg 0x42a50f
mov eax, dword [0x494d30]
or eax, 0xa7c871b3
mov dword [0x494d30], eax
mov eax, 0x730688d4
mov ecx, dword [0x49d128]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x125]
mov dword [edx], ecx
mov dword [esp + 0xc8], eax
mov dword [esp + 0xc4], ecx
call fcn.004554e0
mov si, word [0x4926a2]
mov cx, si
inc ecx
mov si, cx
mov word [0x4926a2], si
movsx ecx, si
add ecx, 0x918ebd7c
mov edx, dword [0x499a88]
sub edx, ecx
mov dword [0x499a88], edx
mov ecx, dword [0x48ef48]
mov edx, esp
mov edi, dword [esp + 0xc4]
mov dword [edx], edi
mov dword [edx + 4], 0
mov dword [esp + 0xc0], eax
call ecx
sub esp, 8
mov ecx, dword [0x498e98]
sar ecx, 1
mov edx, dword [0x499f24]
and ecx, edx
xor ecx, 0xb7439caa
mov edx, dword [esp + 0xc8]
cmp edx, ecx
mov dword [esp + 0xbc], eax
je 0x42a60e
mov eax, 0x1d4dda22
mov cx, word [0x48ff1a]
movsx edx, cx
mov esi, dword [0x49483c]
imul edx, esi
cmp eax, edx
je 0x42a609
mov eax, dword [0x49a4ec]
mov cx, word [0x49245c]
movsx edx, cx
and eax, edx
mov dx, cx
inc edx
mov cx, dx
mov word [0x49245c], cx
and eax, 0x7b93d4d2
mov edx, dword [0x496dcc]
sub edx, eax
mov dword [0x496dcc], edx
jmp 0x42a60e
mov eax, esp
lea ecx, [esp + 0x125]
mov dword [eax + 4], ecx
mov dword [eax], 0x49ca0c
call fcn.004554d0
mov dx, word [0x492bee]
mov cx, dx
dec ecx
mov dx, cx
mov word [0x492bee], dx
mov esi, dword [0x497290]
imul ecx, esi
mov dx, word [0x492864]
mov si, dx
add esi, ecx
mov dx, si
mov word [0x492864], dx
cmp dword [esp + 0x114], 0
mov dword [esp + 0xb8], eax
jne 0x42a697
mov eax, dword [0x495ed8]
imul eax, eax, 0xd11df359
mov dword [0x495ed8], eax
mov dword [0x49d0e0], 0
mov eax, dword [0x4962a0]
and eax, 0xb6a75619
mov dword [0x4962a0], eax
mov eax, dword [0x499a38]
add eax, 0x490d0081
mov dword [0x499a38], eax
mov eax, esp
lea ecx, [esp + 0x125]
mov dword [eax], ecx
mov dword [esp + 0xb4], ecx
call fcn.00440850
mov dword [esp + 0x120], eax
mov eax, dword [0x494878]
mov dword [0x497ed0], eax
mov eax, dword [0x48ef48]
mov ecx, esp
mov edx, dword [esp + 0xb4]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x4976a0]
mov edx, ecx
dec edx
mov dword [0x4976a0], edx
mov edx, dword [0x49c730]
add ecx, edx
xor ecx, 0x60ede56c
mov edx, dword [0x496568]
add edx, ecx
mov dword [0x496568], edx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x1fef
mov dword [esp + 0xb0], eax
call fcn.0042c7c0
mov dword [esp + 0x584], eax
mov eax, dword [0x494e20]
add eax, 0xd3a17444
mov dword [0x494e20], eax
mov eax, dword [esp + 0x584]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0xb4]
mov dword [ecx], eax
call fcn.004554e0
mov ecx, dword [0x4954c0]
or ecx, 0xfb8378d8
mov dword [0x4954c0], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x28b7
mov dword [esp + 0xac], eax
call fcn.0042c7c0
mov dword [esp + 0x580], eax
mov eax, dword [0x496110]
inc eax
mov dword [0x496110], eax
mov ecx, dword [0x4959d8]
and ecx, 0x370c7147
or eax, ecx
mov ecx, dword [0x498c14]
or ecx, 0xb320f380
cmp eax, ecx
jne 0x42a812
mov eax, 0x20232e0f
mov ecx, dword [0x494038]
sar ecx, 3
cmp eax, ecx
jne 0x42a7fe
mov eax, dword [0x4995d4]
mov ecx, eax
dec ecx
mov dword [0x4995d4], ecx
mov ecx, dword [0x49ab2c]
imul eax, ecx
imul eax, eax, 0xbed8405b
mov dword [0x49ab2c], eax
jmp 0x42a80d
mov eax, dword [0x49413c]
and eax, 0x78e70cc8
mov dword [0x49413c], eax
jmp 0x42a812
lea eax, [esp + 0x550]
lea ecx, [esp + 0x125]
mov edx, dword [esp + 0x584]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x1f
mov dword [esp + 0xa8], eax
mov dword [esp + 0xa4], ecx
call fcn.00450bc0
mov eax, dword [0x498d1c]
dec eax
mov dword [0x498d1c], eax
mov ecx, dword [0x49aba0]
or ecx, eax
mov dword [0x49aba0], ecx
mov eax, dword [esp + 0x580]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x550]
call fcn.00435b00
sub esp, 4
mov di, word [0x492882]
movsx ecx, di
shl ecx, 7
mov edx, 0x85038d76
sub edx, ecx
xor edx, 0x33fde55f
mov ecx, dword [0x499c70]
and ecx, edx
mov dword [0x499c70], ecx
mov ecx, dword [esp + 0x580]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xa0], eax
call fcn.00450bc0
mov eax, dword [0x4950c0]
mov ecx, eax
dec ecx
mov dword [0x4950c0], ecx
mov ecx, dword [0x49b088]
lea eax, [eax + ecx + 0x260bb552]
mov dword [0x49b088], eax
mov eax, dword [esp + 0xa8]
mov ecx, eax
call fcn.0040ef30
lea ecx, [esp + 0x550]
mov dword [esp + 0x9c], eax
call fcn.00443800
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x98], ecx
call fcn.00437df0
cmp eax, 0
jne 0x42b4f4
mov eax, dword [0x497a00]
and eax, 0x4ca10c14
mov dword [0x497a00], eax
cmp dword [0x49c828], 6
jb 0x42aa27
mov eax, dword [0x498094]
mov ecx, dword [0x49bc00]
inc ecx
mov dword [0x49bc00], ecx
and eax, ecx
or eax, 0x51e6
mov dx, word [0x493038]
mov cx, dx
add ecx, eax
mov dx, cx
mov word [0x493038], dx
mov eax, esp
mov dword [eax + 4], 0x12
mov dword [eax], 0x149a
call fcn.0042c7c0
mov dword [esp + 0x57c], eax
mov dx, word [0x491cda]
mov ax, dx
xor eax, 0x944a
mov dx, ax
mov word [0x491cda], dx
mov eax, dword [esp + 0x57c]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x125]
mov dword [ecx], eax
mov dword [ecx + 8], 0x49c8b8
call fcn.004589a9
mov dx, word [0x4926a0]
mov cx, dx
xor ecx, 0x40e4
mov dx, cx
mov word [0x4926a0], dx
mov ecx, dword [esp + 0x57c]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], 0x12
mov dword [esp + 0x94], eax
call fcn.00450bc0
mov eax, dword [0x498e14]
imul eax, eax, 0x84182f00
mov dword [0x498e14], eax
jmp 0x42aac8
mov eax, dword [0x4960f0]
mov ecx, dword [0x49a368]
xor eax, ecx
xor eax, 0xf7365ca8
mov dword [0x49a368], eax
mov eax, esp
mov dword [eax + 4], 0x24
mov dword [eax], 0x2adc
call fcn.0042c7c0
mov dword [esp + 0x578], eax
mov eax, dword [0x4944e8]
add eax, 0x46690610
mov dword [0x4944e8], eax
mov eax, dword [esp + 0x578]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x125]
mov dword [ecx], eax
mov dword [ecx + 8], 0x49c8b8
call fcn.004589a9
mov ecx, dword [0x49c528]
xor ecx, 0x7a1ce8c1
mov dword [0x49c528], ecx
mov ecx, dword [esp + 0x578]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x24
mov dword [esp + 0x90], eax
call fcn.00450bc0
mov eax, dword [0x49a63c]
add eax, 0xf798751f
mov dword [0x49a63c], eax
mov eax, 0xbccefcaa
mov cx, word [0x48fc28]
movsx edx, cx
imul edx, edx, 0x4ad5a70e
add edx, 0x7f40f4bd
mov esi, dword [0x49b230]
sub esi, edx
mov dword [0x49b230], esi
mov byte [esp + 0x54f], 0
mov edx, dword [0x49b68c]
mov esi, edx
inc esi
mov dword [0x49b68c], esi
xor edx, 0x9a03539d
mov esi, dword [0x4981ec]
or esi, edx
mov dword [0x4981ec], esi
mov edx, dword [0x49d128]
mov esi, esp
mov dword [esi + 4], edx
lea edx, [esp + 0x125]
mov dword [esi], edx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], edx
call fcn.004554e0
mov edx, dword [0x493840]
xor edx, 0xf1384e4e
mov esi, dword [0x49b15c]
imul esi, edx
mov dword [0x49b15c], esi
mov edx, dword [0x48ef48]
mov esi, esp
mov edi, dword [esp + 0x88]
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esp + 0x84], eax
call edx
sub esp, 8
mov edx, dword [0x498f04]
xor edx, 0x7f1f2341
mov dword [0x498f04], edx
mov edx, esp
mov esi, dword [esp + 0x88]
mov dword [edx + 4], esi
mov dword [edx], 0x49ca0c
mov dword [esp + 0x80], eax
call fcn.004554d0
mov edx, dword [0x49416c]
and edx, 0xe4560892
mov dword [0x49416c], edx
mov edx, esp
mov esi, dword [esp + 0x88]
mov dword [edx], esi
mov dword [esp + 0x7c], eax
call fcn.00440850
mov dword [esp + 0x120], eax
mov eax, dword [0x495b60]
inc eax
mov dword [0x495b60], eax
sub eax, 0x8626d211
sub eax, 0x60c66c44
mov edx, dword [esp + 0x8c]
cmp edx, eax
jg 0x42ac48
mov eax, dword [0x498a2c]
add eax, 0x918c0891
mov ecx, dword [0x495908]
cmp eax, ecx
je 0x42ac37
mov ax, word [0x4920d8]
movsx ecx, ax
mov edx, dword [0x49a46c]
add edx, ecx
mov dword [0x49a46c], edx
jmp 0x42ac43
mov ax, word [0x48fea6]
mov word [0x490246], ax
jmp 0x42ac48
lea eax, [esp + 0x550]
lea ecx, [esp + 0x125]
mov edx, dword [0x48ef48]
mov esi, esp
lea edi, [esp + 0x125]
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], ecx
mov dword [esp + 0x70], edi
call edx
sub esp, 8
mov ecx, dword [0x494160]
add ecx, 0x4d9e9c1e
mov dword [0x494160], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x1fef
mov dword [esp + 0x6c], eax
call fcn.0042c7c0
mov dword [esp + 0x574], eax
mov bx, word [0x49233e]
mov ax, bx
and eax, 0x8b00
mov bx, ax
mov word [0x49233e], bx
mov eax, dword [esp + 0x574]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x70]
mov dword [ecx], eax
call fcn.004554e0
mov bx, word [0x491e58]
movsx ecx, bx
xor ecx, 0x405e0de8
mov edx, dword [0x493f74]
or edx, ecx
mov dword [0x493f74], edx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x28b7
mov dword [esp + 0x68], eax
call fcn.0042c7c0
mov dword [esp + 0x570], eax
mov bx, word [0x493102]
mov ax, bx
xor eax, 0x42f0
mov bx, ax
mov word [0x493102], bx
mov eax, dword [esp + 0x574]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00450bc0
mov bx, word [0x4936a6]
movsx eax, bx
imul eax, eax, 0x262e700
mov ecx, dword [0x49a014]
sub ecx, eax
mov dword [0x49a014], ecx
mov eax, dword [esp + 0x570]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x550]
call fcn.00435b00
sub esp, 4
mov ecx, dword [0x4973f8]
imul ecx, ecx, 0xb3b5e8f2
mov dword [0x4973f8], ecx
mov ecx, dword [esp + 0x570]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x64], eax
call fcn.00450bc0
mov dword [0x4991a8], 0xa9323ba7
mov eax, dword [esp + 0x78]
mov ecx, eax
call fcn.0040ef30
lea ecx, [esp + 0x550]
mov dword [esp + 0x60], eax
call fcn.00443800
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x5c], ecx
call fcn.00437df0
cmp eax, 0
jne 0x42b4a0
mov eax, 0x422b298f
mov ecx, dword [0x494a44]
mov dword [0x49a8a4], ecx
mov ecx, dword [0x48eef0]
mov edx, esp
lea esi, [esp + 0x125]
mov dword [edx + 4], esi
mov dword [edx], 0x104
mov dword [esp + 0x58], eax
call ecx
sub esp, 8
mov di, word [0x4916b6]
movsx ecx, di
imul ecx, ecx, 0xfbad1d3f
mov edx, dword [esp + 0x58]
cmp edx, ecx
mov dword [esp + 0x54], eax
jge 0x42ae65
mov dword [0x49b954], 0xcc0eec98
mov eax, esp
lea ecx, [esp + 0x125]
mov dword [eax], ecx
call fcn.00452240
mov dword [esp + 0x120], eax
mov eax, dword [0x493aa0]
mov ecx, dword [0x494a9c]
mov edx, ecx
inc edx
mov dword [0x494a9c], edx
imul eax, ecx
shl eax, 7
mov ecx, dword [0x49545c]
xor ecx, eax
mov dword [0x49545c], ecx
mov eax, dword [esp + 0x120]
add eax, 0xfffffffe
mov dword [esp + 0x120], eax
mov eax, dword [0x4959c8]
add eax, 0x890711a0
mov dword [0x4959c8], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 0x11c], eax
cmp dword [esp + 0x11c], 0
jle 0x42b060
mov eax, dword [0x49968c]
add eax, 0xf7fde7fe
mov dword [0x49968c], eax
mov eax, dword [esp + 0x11c]
movsx eax, byte [esp + eax + 0x125]
cmp eax, 0x5c
jne 0x42b032
mov eax, dword [0x498354]
inc eax
mov dword [0x498354], eax
xor eax, 0xb550f37b
mov ecx, dword [0x493d38]
cmp eax, ecx
jl 0x42af83
mov eax, 0x3a84610b
mov ecx, dword [0x494ae4]
xor ecx, 0xd311b601
cmp eax, ecx
je 0x42af6b
mov eax, 0x2ae47708
mov ecx, dword [0x493eac]
not ecx
mov edx, dword [0x496940]
imul ecx, edx
cmp eax, ecx
jle 0x42af61
jmp 0x42af66
jmp 0x42af66
jmp 0x42af7e
mov eax, dword [0x493e38]
mov ecx, dword [0x499200]
or ecx, eax
mov dword [0x499200], ecx
jmp 0x42af83
mov eax, 0x79c86c26
mov ecx, dword [esp + 0x11c]
inc ecx
mov dword [esp + 0x11c], ecx
mov dx, word [0x490746]
movsx ecx, dx
add ecx, 0x1056ccf
mov esi, dword [0x499c78]
imul esi, ecx
mov dword [0x499c78], esi
mov ecx, dword [esp + 0x11c]
mov byte [esp + ecx + 0x125], 0
mov ecx, dword [0x49ab78]
or ecx, 0x840b7abe
and ecx, 0xb5bbffff
mov esi, dword [0x49acc4]
imul esi, ecx
mov dword [0x49acc4], esi
mov ecx, dword [esp + 0x11c]
mov dword [esp + 0x120], ecx
mov dx, word [0x48f442]
movsx ecx, dx
and ecx, 0x7e9dd8e9
cmp eax, ecx
je 0x42b02d
mov eax, dword [0x496e40]
mov ecx, eax
inc ecx
mov dword [0x496e40], ecx
xor eax, 0xb80405f6
mov ecx, dword [0x49a588]
sub ecx, eax
mov dword [0x49a588], ecx
jmp 0x42b060
mov ax, word [0x48f388]
mov cx, ax
xor ecx, 0x4a9f
mov ax, cx
mov word [0x48f388], ax
mov eax, dword [esp + 0x11c]
add eax, 0xffffffff
mov dword [esp + 0x11c], eax
jmp 0x42aed2
mov eax, 0xaa8be693
mov cx, word [0x492f0c]
movsx edx, cx
sar edx, 5
cmp eax, edx
jge 0x42b09d
mov eax, dword [0x498f00]
shr eax, 3
xor eax, 0x472b
mov cx, word [0x48f5f0]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x48f5f0], cx
mov eax, esp
lea ecx, [esp + 0x125]
mov dword [eax + 4], ecx
mov dword [eax], 0x49ca0c
mov dword [esp + 0x50], ecx
call fcn.004554d0
mov ecx, dword [0x4960bc]
or ecx, 0xbc2d5968
mov dword [0x4960bc], ecx
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [esp + 0x4c], eax
call fcn.00440850
mov dword [esp + 0x120], eax
mov si, word [0x493488]
mov ax, si
dec eax
mov di, ax
mov word [0x493488], di
movsx eax, si
mov ecx, dword [0x495174]
and ecx, eax
mov dword [0x495174], ecx
mov eax, dword [0x48ef48]
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov si, word [0x491d00]
mov cx, si
dec ecx
mov di, cx
mov word [0x491d00], di
movsx ecx, si
and ecx, 0x6840001
mov edx, dword [0x495a24]
mov ebx, edx
dec ebx
mov dword [0x495a24], ebx
or edx, 0x43e48e2e
cmp ecx, edx
mov dword [esp + 0x48], eax
jg 0x42b1cc
mov eax, 0x6020406
mov ecx, dword [0x4954b8]
cmp eax, ecx
jle 0x42b1af
mov eax, 0x5164b097
mov ecx, dword [0x495a78]
mov dx, word [0x48f68e]
mov si, dx
inc esi
mov di, si
mov word [0x48f68e], di
movsx esi, dx
sub eax, esi
cmp ecx, eax
jl 0x42b1a5
jmp 0x42b1aa
jmp 0x42b1aa
jmp 0x42b1c7
mov ax, word [0x4901e0]
mov cx, ax
xor ecx, 0xa9d4
mov ax, cx
mov word [0x4901e0], ax
jmp 0x42b1cc
lea eax, [esp + 0x550]
lea ecx, [esp + 0x125]
mov edx, esp
mov dword [edx + 4], 0x1f
mov dword [edx], 0x1fef
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], ecx
call fcn.0042c7c0
mov dword [esp + 0x56c], eax
mov eax, dword [0x49adf8]
add eax, 0xff4257a8
mov dword [0x49adf8], eax
mov eax, dword [esp + 0x56c]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x125]
mov dword [ecx], eax
call fcn.004554e0
mov ecx, dword [0x498cec]
xor ecx, 0x910dfe0
mov dword [0x498cec], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x28b7
mov dword [esp + 0x3c], eax
call fcn.0042c7c0
mov dword [esp + 0x568], eax
mov si, word [0x492b30]
mov ax, si
dec eax
mov di, ax
mov word [0x492b30], di
movsx eax, si
add eax, 0x481fcefd
mov ecx, dword [0x499e3c]
xor eax, ecx
xor eax, 0xc71b08d
mov dword [0x499e3c], eax
mov eax, dword [esp + 0x56c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00450bc0
mov word [0x491e38], 0x594e
mov eax, dword [esp + 0x568]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x550]
call fcn.00435b00
sub esp, 4
mov ecx, dword [0x49bf10]
imul ecx, ecx, 0x728ce5c4
mov dword [0x49bf10], ecx
mov ecx, dword [esp + 0x568]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x38], eax
call fcn.00450bc0
mov si, word [0x4929fa]
movsx eax, si
shl eax, 8
or eax, 0xdbffdf96
mov ecx, dword [0x493cc8]
imul ecx, eax
mov dword [0x493cc8], ecx
mov eax, dword [esp + 0x44]
mov ecx, eax
call fcn.0040ef30
lea ecx, [esp + 0x550]
mov dword [esp + 0x34], eax
call fcn.00443800
mov ecx, 0x9a47605
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x9a47605
mov dword [esp + 0x30], ecx
call fcn.00437df0
cmp eax, 0
jne 0x42b491
mov eax, 0x88e9464e
mov cx, word [0x48f5e2]
movsx edx, cx
add edx, 0xe2345350
mov esi, dword [0x497ce4]
xor esi, edx
mov dword [0x497ce4], esi
mov edx, dword [0x48eef0]
mov esi, esp
lea edi, [esp + 0x125]
mov dword [esi + 4], edi
mov dword [esi], 0x104
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], edi
call edx
sub esp, 8
mov edx, dword [0x4968a4]
shl edx, 6
mov esi, dword [0x499d24]
or esi, edx
mov dword [0x499d24], esi
mov edx, esp
mov esi, dword [esp + 0x28]
mov dword [edx + 4], esi
mov dword [edx], 0x49ca0c
mov dword [esp + 0x24], eax
call fcn.004554d0
mov cx, word [0x49054a]
mov dx, cx
xor edx, 0xfab7
mov cx, dx
mov word [0x49054a], cx
mov edx, esp
mov dword [edx + 4], 0x1f
mov dword [edx], 0x1fef
mov dword [esp + 0x20], eax
call fcn.0042c7c0
mov dword [esp + 0x564], eax
mov eax, dword [0x49bff4]
imul eax, eax, 0xf65f3d0e
sub eax, 0x72cde951
mov edx, dword [esp + 0x2c]
cmp edx, eax
jle 0x42b43b
mov eax, dword [0x498e14]
mov ecx, dword [0x4970dc]
xor eax, ecx
not eax
mov dword [0x4970dc], eax
mov eax, dword [esp + 0x564]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x125]
mov dword [ecx], eax
call fcn.004554e0
mov ecx, dword [0x4951f8]
add ecx, 0x6000604
mov dword [0x4951f8], ecx
mov ecx, dword [esp + 0x564]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x1c], eax
call fcn.00450bc0
mov eax, dword [0x493b40]
add eax, 0x54f1f043
mov dword [0x493b40], eax
mov eax, dword [0x499694]
add eax, 0x7e4d3c52
mov dword [0x499694], eax
mov eax, dword [0x498624]
mov cx, word [0x48f076]
movsx edx, cx
add edx, 0xf9901fbf
and eax, edx
cmp eax, 0x28529400
jge 0x42b4d9
mov eax, dword [0x49a9cc]
shl eax, 4
add eax, 0xc8bf387f
mov dword [0x497be0], eax
jmp 0x42b4ef
mov eax, dword [0x49be7c]
sar eax, 3
mov ecx, dword [0x498bf0]
sub ecx, eax
mov dword [0x498bf0], ecx
jmp 0x42b4f4
mov eax, dword [0x498d04]
inc eax
mov dword [0x498d04], eax
mov cx, word [0x493270]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x493270], cx
mov eax, esp
lea edx, [esp + 0x125]
mov dword [eax], edx
mov dword [esp + 0x18], edx
call fcn.00440850
mov edx, dword [0x494c20]
add edx, 0x8912313f
or edx, 0x2e39
mov cx, word [0x49254c]
mov si, cx
sub esi, edx
mov cx, si
mov word [0x49254c], cx
mov edx, dword [0x48eefc]
mov esi, esp
mov edi, dword [esp + 0x18]
mov dword [esi], edi
mov dword [esi + 4], 2
mov dword [esp + 0x14], eax
call edx
sub esp, 8
mov edx, dword [0x493efc]
shl edx, 0xa
mov esi, dword [0x496ff4]
and esi, 0xff995770
or edx, esi
mov dword [0x4946f0], edx
mov edx, esp
mov esi, dword [esp + 0x18]
mov dword [edx], esi
mov dword [edx + 4], 0x42b
mov dword [esp + 0x10], eax
call fcn.0040ee60
mov eax, dword [0x49b4f0]
mov edx, dword [0x49a1e4]
xor eax, edx
xor eax, 0xa3cf3b9
mov dword [0x49a1e4], eax
lea ecx, [esp + 0x550]
call fcn.0041c510
add esp, 0x590
pop esi
pop edi
pop ebx
ret