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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xb30
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [esp + 0xb28], eax
mov dword [esp + 0xb24], ecx
mov dword [esp + 0xb20], edx
mov dword [esp + 0xb1c], esi
mov dword [esp + 0xb18], edi
mov eax, dword [0x4a2d5c]
sar eax, 6
mov ecx, dword [0x49ee1c]
and ecx, eax
mov dword [0x49ee1c], ecx
mov eax, esp
mov dword [eax + 4], 8
mov dword [eax], 0x87cf
call fcn.00402ec0
mov dword [esp + 0xb14], eax
mov eax, dword [0x4aa420]
xor eax, 0xee67af0b
mov dword [0x4aa420], eax
mov eax, dword [esp + 0xb14]
mov ecx, dword [esp + 0xb18]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00454880
mov dword [esp + 0xaec], eax
mov eax, dword [0x49f1a4]
imul eax, eax, 0x6d531fb4
mov dword [0x49f1a4], eax
mov eax, dword [esp + 0xb14]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 8
call fcn.004018d0
mov eax, dword [0x4a5a88]
shl eax, 0xa
mov ecx, dword [0x4a0920]
lea eax, [eax + ecx - 0xdc83d58]
mov dword [0x4a0920], eax
cmp dword [esp + 0xaec], 0
jne 0x430203
mov eax, dword [0x4aa23c]
and eax, 0x6d0d94d2
mov ecx, dword [0x4a891c]
xor ecx, 0xffffffff
imul ecx, ecx, 0x1c411c09
sub ecx, 0xd7ab75d8
cmp eax, ecx
jg 0x4300d0
mov ax, word [0x497c94]
mov cx, ax
imul ecx, ecx, 0xe17e8ef9
mov ax, cx
mov word [0x497c94], ax
cmp dword [esp + 0xb28], 0
je 0x43014e
mov eax, 0xf9c7498a
mov ecx, dword [0x4aa7d4]
shl ecx, 0xa
cmp eax, ecx
jge 0x430104
mov eax, dword [0x4a229c]
imul eax, eax, 0x6d8f1c10
mov dword [0x4a229c], eax
mov eax, 0xf27ea83a
mov ecx, dword [esp + 0xb20]
mov dword [esp + 0x128], eax
call fcn.0043a8a0
mov eax, dword [0x4a4984]
xor eax, 0x71b179b5
xor eax, 0x981aef05
mov ecx, dword [esp + 0x128]
cmp ecx, eax
je 0x430149
mov eax, dword [0x4a6cb4]
xor eax, 0xc39ac5f1
mov dword [0x4a6cb4], eax
jmp 0x43288a
mov dword [0x4a2858], 0xd0195751
mov eax, dword [esp + 0xb20]
mov ecx, dword [esp + 0xb1c]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.0040cd00
mov dword [esp + 0xae8], eax
mov eax, dword [0x4a31f8]
inc eax
mov dword [0x4a31f8], eax
mov ecx, dword [0x49f138]
dec ecx
mov dword [0x49f138], ecx
imul ecx, ecx, 0x4a5852f4
and eax, ecx
mov si, ax
mov word [0x494e04], si
cmp dword [esp + 0xae8], 0
jg 0x4301f4
mov eax, dword [0x4a492c]
not eax
mov cx, ax
mov word [0x495cb4], cx
mov ecx, dword [esp + 0xb20]
call fcn.0043a8a0
mov eax, dword [0x4a383c]
mov ecx, eax
dec ecx
mov dword [0x4a383c], ecx
imul eax, eax, 0xec966d5d
mov ecx, dword [0x4a46a8]
and eax, ecx
and eax, 0xa334ca2
mov dword [0x4a46a8], eax
mov dword [0x4a0838], 0x9a8cbfc3
jmp 0x43288a
mov eax, 0x4b2463b9
mov ecx, dword [0x4aa6bc]
dec ecx
mov dword [0x4aa6bc], ecx
mov edx, dword [0x49dc6c]
sub ecx, edx
add ecx, 0xe4835f00
cmp eax, ecx
jl 0x43023a
mov eax, dword [0x4a42ec]
or eax, 0x89b1d267
mov dword [0x4a42ec], eax
mov eax, dword [0x49d9f8]
inc eax
mov dword [0x49d9f8], eax
and eax, 0xe2a16a50
cmp eax, 0x7e1c59f0
jle 0x43026d
mov eax, dword [0x4ac5c8]
and eax, 0xbbaf0e61
mov ecx, dword [0x4a935c]
sub ecx, eax
mov dword [0x4a935c], ecx
mov ax, word [0x494c24]
movsx ecx, ax
and ecx, 0xca14e54a
cmp ecx, 0xbbeec611
jl 0x430297
mov eax, dword [0x49c444]
xor eax, 0x7ce41b67
mov dword [0x49c444], eax
mov eax, 0x96f8a0b1
mov ecx, dword [0x4a79d8]
imul ecx, ecx, 0x38b613bf
mov dword [0x4a79d8], ecx
mov dx, word [0x495b80]
mov cx, dx
not ecx
mov esi, dword [0x49d07c]
mov edi, esi
dec edi
mov dword [0x49d07c], edi
imul esi, esi, 0xc90fbe84
or ecx, esi
mov dx, word [0x49c25c]
mov si, dx
sub esi, ecx
mov dx, si
mov word [0x49c25c], dx
mov dword [0x49f2b0], 0xf5a4efe0
mov ecx, dword [0x4ac3c8]
add ecx, 0x5032f9b7
mov dword [0x4ac3c8], ecx
lea ecx, [esp + 0x68c]
mov dword [esp + 0x124], eax
call fcn.0042f1e0
mov ecx, dword [0x49f7b0]
add ecx, 0x54a30a00
mov dword [0x49f7b0], ecx
mov ecx, dword [0x4a87ec]
or ecx, 0x37326086
mov dword [0x4a87ec], ecx
mov dx, word [0x4985d6]
mov cx, dx
inc ecx
mov bx, cx
mov word [0x4985d6], bx
movsx ecx, dx
mov esi, dword [0x49ecc8]
xor ecx, esi
xor ecx, 0x32ac
mov dword [0x49ecc8], ecx
mov ecx, dword [0x4aafa4]
mov dx, word [0x497d5a]
mov si, dx
inc esi
mov bx, si
mov word [0x497d5a], bx
movsx esi, dx
and ecx, esi
mov esi, dword [esp + 0x124]
cmp esi, ecx
mov dword [esp + 0x120], eax
jne 0x4303c2
mov eax, dword [0x4a309c]
imul eax, eax, 0xb5748831
add eax, 0xb94bc92b
mov cx, word [0x494d74]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x494d74], cx
mov eax, 0xd1667acd
mov dword [esp + 0x214], 0
mov dword [esp + 0x210], 0
mov ecx, dword [0x4a2014]
mov edx, dword [0x4a7e14]
or edx, ecx
mov dword [0x4a7e14], edx
mov ecx, dword [0x49dc94]
mov edx, ecx
dec edx
mov dword [0x49dc94], edx
xor ecx, 0xc29a16ac
mov dword [0x4a2e2c], ecx
mov dword [esp + 0x208], 0xffffffff
mov dword [esp + 0x204], 0xffffffff
mov ecx, dword [0x4a0bd8]
shl ecx, 0xa
mov si, word [0x497028]
movsx edx, si
add edx, 0x3a3f7805
or ecx, edx
cmp eax, ecx
jge 0x43046a
mov eax, dword [0x4a9210]
add eax, 0x30c7dd2
mov cx, word [0x497392]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x497392], cx
jmp 0x43047a
mov eax, dword [0x49ce2c]
imul eax, eax, 0x8cdb44d7
mov dword [0x49ce2c], eax
mov dword [esp + 0x200], 0x50
mov word [0x4961e4], 0xa47a
mov byte [esp + 0x1ff], 0
mov eax, dword [0x49cbd4]
or eax, 0x4004018a
mov dword [0x49cbd4], eax
mov eax, esp
mov dword [eax], 0
call fcn.00450590
add eax, 0x258
adc edx, 0
mov dword [esp + 0x210], eax
mov dword [esp + 0x214], edx
mov cx, word [0x49bcb4]
mov ax, cx
imul eax, eax, 0xd705000
mov cx, ax
mov word [0x49bcb4], cx
mov byte [esp + 0x6bc], 0
mov cx, word [0x49c21c]
mov ax, cx
add eax, 0xf5ae8861
mov cx, ax
mov word [0x49c21c], cx
mov eax, dword [esp + 0xb18]
mov edx, esp
mov dword [edx], eax
call fcn.00451670
mov dword [esp + 0x220], eax
mov cx, word [0x497eaa]
mov ax, cx
xor eax, 0x5301
mov cx, ax
mov word [0x497eaa], cx
cmp dword [esp + 0x220], 0x7f
jle 0x43055e
mov eax, dword [0x4a2a54]
xor eax, 0xc6177667
mov ecx, dword [0x4a0a3c]
add ecx, eax
mov dword [0x4a0a3c], ecx
jmp 0x4327b3
mov ax, word [0x498932]
movsx ecx, ax
neg ecx
mov edx, dword [0x4a47c0]
lea ecx, [edx + ecx + 0x60ab4652]
mov dword [0x4a47c0], ecx
mov ecx, dword [esp + 0xb18]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0xa04]
mov dword [edx], ecx
call fcn.00454780
mov ecx, dword [0x4ac260]
mov edx, ecx
inc edx
mov dword [0x4ac260], edx
mov edx, 0x433ac4e4
sub edx, ecx
mov si, word [0x4987fe]
movsx ecx, si
shl ecx, 0xa
sub edx, ecx
mov ecx, dword [0x49cbc4]
and ecx, edx
mov dword [0x49cbc4], ecx
mov ecx, dword [esp + 0x220]
sub ecx, 1
mov dword [esp + 0x21c], ecx
mov dword [esp + 0x11c], eax
mov eax, dword [esp + 0x21c]
mov ecx, dword [esp + 0x220]
sub ecx, 6
cmp eax, ecx
jl 0x4306e4
mov eax, dword [0x4a4e0c]
add eax, 0xacdf0e32
mov dword [0x4a4e0c], eax
mov eax, dword [esp + 0x21c]
movsx eax, byte [esp + eax + 0xa04]
cmp eax, 0x3a
jne 0x4306bb
mov eax, dword [0x4a2c40]
add eax, 0x7fb736bc
mov dword [0x4a8b38], eax
mov eax, dword [esp + 0x21c]
mov byte [esp + eax + 0xa04], 0
mov eax, dword [0x4a00c0]
dec eax
mov dword [0x4a00c0], eax
mov ecx, dword [0x4a0174]
or eax, ecx
or eax, 0x7cba2388
mov dword [0x4a0174], eax
mov eax, dword [esp + 0x21c]
mov dword [esp + 0x220], eax
mov eax, dword [0x4a4f68]
mov ecx, dword [0x49eb20]
shr ecx, 4
imul eax, ecx
mov dx, ax
mov word [0x49763c], dx
mov eax, dword [esp + 0x21c]
lea ecx, [esp + 0xa04]
lea eax, [eax + ecx + 1]
mov ecx, esp
mov dword [ecx], eax
call fcn.0045496e
mov dword [esp + 0x200], eax
mov eax, dword [0x4a4da0]
add eax, 0x552ca210
mov dword [0x4a4da0], eax
jmp 0x4306e4
mov eax, dword [0x4a1754]
mov ecx, dword [0x4a972c]
xor ecx, eax
mov dword [0x4a972c], ecx
mov eax, dword [esp + 0x21c]
add eax, 0xffffffff
mov dword [esp + 0x21c], eax
jmp 0x4305e1
mov dword [0x4a9e50], 0x509281f5
mov dword [esp + 0x21c], 0
mov eax, dword [esp + 0x21c]
cmp eax, dword [esp + 0x220]
jg 0x430916
mov eax, dword [0x4aaca8]
mov ecx, 0xd5580567
sub ecx, eax
or ecx, 0x18e99a01
mov eax, dword [0x49c89c]
and eax, ecx
mov dword [0x49c89c], eax
mov eax, dword [esp + 0x21c]
mov dl, byte [esp + eax + 0xa04]
mov byte [esp + eax + 0x920], dl
mov eax, dword [0x49e4fc]
add eax, 0xa7f5074d
mov dword [0x4aaaac], eax
mov eax, dword [esp + 0x21c]
movsx eax, byte [esp + eax + 0x920]
cmp eax, 0x2f
jne 0x4308db
mov eax, dword [0x4a4c7c]
mov ecx, eax
dec ecx
mov dword [0x4a4c7c], ecx
mov ecx, 0xdaffa062
sub ecx, eax
mov eax, dword [0x4a3238]
imul eax, ecx
mov dword [0x4a3238], eax
mov eax, dword [esp + 0x21c]
mov byte [esp + eax + 0x920], 0
mov eax, dword [0x4a331c]
mov ecx, eax
dec ecx
mov dword [0x4a331c], ecx
mov dx, word [0x495fd8]
movsx ecx, dx
neg ecx
lea eax, [eax + ecx - 1]
xor eax, 0x54467881
mov ecx, dword [0x4aad74]
or ecx, eax
mov dword [0x4aad74], ecx
mov eax, dword [esp + 0x21c]
mov dword [esp + 0x218], eax
mov eax, dword [esp + 0x218]
cmp eax, dword [esp + 0x220]
jg 0x430897
mov ax, word [0x498104]
mov cx, ax
mov ax, word [0x497b24]
mov dx, ax
and ecx, edx
mov ax, cx
movsx ecx, ax
mov edx, dword [0x49eba8]
imul edx, ecx
mov dword [0x49eba8], edx
mov ecx, dword [esp + 0x218]
mov bl, byte [esp + ecx + 0xa04]
mov edx, dword [esp + 0x21c]
sub ecx, edx
mov byte [esp + ecx + 0x6bc], bl
mov ax, word [0x49b408]
movsx ecx, ax
sar ecx, 2
or ecx, 0x806308b0
mov edx, dword [0x4ab8fc]
xor edx, 0xffffffff
cmp ecx, edx
jne 0x430869
mov eax, dword [0x4a3008]
xor eax, 0xafcbeed3
mov dword [0x4a3008], eax
jmp 0x43087c
mov eax, dword [0x4aa97c]
mov ecx, dword [0x4a5108]
xor ecx, eax
mov dword [0x4a5108], ecx
jmp 0x430881
mov eax, dword [esp + 0x218]
add eax, 1
mov dword [esp + 0x218], eax
jmp 0x4307d7
mov eax, 0xea28c7a4
mov ecx, dword [0x4aa1cc]
inc ecx
mov dword [0x4aa1cc], ecx
mov edx, dword [0x4a5068]
not edx
mov esi, dword [0x4a03cc]
shl esi, 6
sub edx, esi
or ecx, edx
cmp eax, ecx
jg 0x4308d6
mov eax, dword [0x4a6a84]
imul eax, eax, 0xd72be104
mov dword [0x4a6a84], eax
jmp 0x430916
mov eax, dword [0x49f1ec]
and eax, 0xa415
xor eax, 0xea91
mov cx, word [0x494a20]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x494a20], cx
mov eax, dword [esp + 0x21c]
add eax, 1
mov dword [esp + 0x21c], eax
jmp 0x4306f9
lea eax, [esp + 0x6bc]
mov dword [0x49cb10], 0xa4c4f2c5
mov ecx, esp
mov dword [ecx], eax
call fcn.00451670
mov ecx, dword [esp + 0xb1c]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x118], eax
call fcn.00451670
mov ecx, dword [esp + 0x118]
add ecx, eax
cmp ecx, 0x1ff
jbe 0x4309af
mov eax, dword [0x4ac324]
lea eax, [eax*4 - 0x7d27509b]
and eax, 0x2e4ef00a
mov ecx, dword [0x4a4a20]
mov edx, dword [0x4a7108]
and edx, 0xf2cab154
or ecx, edx
cmp eax, ecx
jne 0x4309aa
mov eax, dword [0x4a6f34]
mov ecx, eax
dec ecx
mov dword [0x4a6f34], ecx
mov ecx, 0xd0ac6343
sub ecx, eax
mov eax, dword [0x4a6b80]
xor eax, ecx
mov dword [0x4a6b80], eax
jmp 0x4327b3
mov eax, dword [0x49cf8c]
sar eax, 4
add eax, 0x27f01af2
mov ecx, dword [0x49c814]
sub ecx, eax
mov dword [0x49c814], ecx
mov eax, dword [esp + 0xb1c]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x6bc]
mov dword [ecx], eax
call fcn.00454790
mov ecx, dword [0x4a9400]
add ecx, 0x47959ea0
mov dword [0x4a9400], ecx
mov dword [esp + 0x218], 0
mov ecx, dword [0x4aa40c]
dec ecx
mov dword [0x4aa40c], ecx
mov edx, dword [0x4ac568]
not edx
imul ecx, edx
imul ecx, ecx, 0x349bbbf4
mov si, word [0x498190]
mov dx, si
sub edx, ecx
mov si, dx
mov word [0x498190], si
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x838
mov dword [esp + 0x114], eax
call fcn.00402ec0
mov dword [esp + 0xb10], eax
mov eax, dword [0x4a22c0]
and eax, 0x1706b49c
mov dword [0x4a22c0], eax
mov eax, dword [esp + 0xb10]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x68c]
call fcn.0043a790
sub esp, 4
mov ecx, dword [0x4abef4]
mov edx, ecx
inc edx
mov dword [0x4abef4], edx
mov dword [0x49f1a8], ecx
mov ecx, dword [esp + 0xb10]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 5
mov dword [esp + 0x110], eax
call fcn.004018d0
mov eax, dword [0x4a70b0]
add eax, 0x6c8adfcf
mov dword [0x4a70b0], eax
mov eax, dword [esp + 0xb20]
mov ecx, eax
call fcn.00421310
cmp eax, 0
je 0x430dad
mov eax, 0xe06b398a
mov cx, word [0x4947d2]
mov dx, cx
or edx, 0xd650
mov cx, dx
mov word [0x4947d2], cx
mov edx, esp
mov dword [edx + 4], 0xc
mov dword [edx], 0xb387
mov dword [esp + 0x10c], eax
call fcn.00402ec0
mov dword [esp + 0xb0c], eax
mov cx, word [0x494952]
movsx eax, cx
xor eax, 0xffffffff
mov edx, dword [esp + 0x10c]
cmp edx, eax
jle 0x430b45
mov dword [0x4ab914], 0x278fd26d
jmp 0x430b94
mov eax, dword [0x4a9fa4]
xor eax, 0xffffffff
and eax, 0x7035291
or eax, 0x305f6d2d
cmp eax, 0xad802d6a
je 0x430b85
mov eax, 0x76f7f1f6
mov ecx, dword [0x4a8de0]
add ecx, 0xf2cb59db
cmp eax, ecx
jg 0x430b80
jmp 0x430b80
jmp 0x430b8f
mov dword [0x4a2aa0], 0x5bc5c68c
jmp 0x430b94
mov ecx, dword [esp + 0xb20]
mov eax, dword [esp + 0xb0c]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x1e8]
mov dword [esp + 0x108], ecx
mov ecx, eax
mov dword [esp + 0x104], eax
call fcn.004028f0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x104]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x100], eax
call fcn.0043c600
sub esp, 8
mov dword [esp + 0x21c], eax
mov ecx, dword [esp + 0x104]
call fcn.00437b50
mov eax, dword [0x4abb84]
mov ecx, dword [0x4a343c]
mov edx, ecx
dec edx
mov dword [0x4a343c], edx
and eax, ecx
mov ecx, dword [0x49fba8]
and ecx, eax
mov dword [0x49fba8], ecx
mov eax, dword [esp + 0xb0c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xc
call fcn.004018d0
mov eax, dword [0x4a9ce4]
xor eax, 0x1559fcbc
mov dword [0x4a9ce4], eax
cmp dword [esp + 0x21c], 0
jne 0x430d88
mov eax, dword [0x49fad0]
mov ecx, dword [0x49d204]
and ecx, eax
mov dword [0x49d204], ecx
mov dword [esp + 0x218], 1
mov eax, dword [0x4a7e58]
imul eax, eax, 0x54869508
mov dword [0x4a7e58], eax
mov eax, dword [esp + 0xb20]
mov ecx, esp
mov dword [ecx], 0
mov ecx, eax
mov dword [esp + 0xfc], eax
call fcn.00404750
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0xb
mov ecx, dword [esp + 0xfc]
call fcn.0042d3d0
sub esp, 8
mov dx, word [0x49bda6]
mov cx, dx
dec ecx
mov si, cx
mov word [0x49bda6], si
movsx ecx, dx
add ecx, 0xcb3e4020
cmp ecx, 0x70995368
mov dword [esp + 0xf8], eax
je 0x430d0a
mov eax, dword [0x49e6b4]
add eax, 0xd720c644
mov ecx, dword [0x4ab34c]
imul ecx, eax
mov dword [0x4ab34c], ecx
mov eax, esp
mov dword [eax + 4], 6
mov dword [eax], 0x854f
call fcn.00402ec0
mov dword [esp + 0xb08], eax
mov word [0x496860], 0x46fd
mov eax, dword [esp + 0xb08]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x68c]
call fcn.0043a790
sub esp, 4
mov ecx, dword [0x4a67e8]
add ecx, 0xc740e1af
mov dword [0x4a67e8], ecx
mov ecx, dword [esp + 0xb08]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 6
mov dword [esp + 0xf4], eax
call fcn.004018d0
mov eax, dword [0x4aa800]
imul eax, eax, 0x9dc92c24
mov dword [0x4aa800], eax
mov eax, dword [0x4a06f8]
add eax, 0xa81490
mov cx, word [0x494326]
mov dx, cx
and eax, edx
and eax, 0xc4e5
mov cx, ax
mov word [0x494326], cx
mov eax, dword [0x49cfe4]
or eax, 0x56b78782
mov dword [0x49cfe4], eax
mov eax, esp
lea ecx, [esp + 0x6bc]
mov dword [eax], ecx
lea eax, [esp + 0x1d4]
mov ecx, eax
mov dword [esp + 0xf0], eax
call fcn.0044d920
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xf0]
mov dword [ecx], edx
lea ecx, [esp + 0x68c]
mov dword [esp + 0xec], eax
call fcn.00437b60
sub esp, 4
mov ecx, dword [esp + 0xf0]
mov dword [esp + 0xe8], eax
call fcn.00404740
mov eax, dword [0x4a80d8]
mov si, word [0x496376]
movsx ecx, si
cmp eax, ecx
jg 0x430e92
mov eax, 0x6c606c30
mov ecx, dword [0x4a6010]
and ecx, 0x1a4dcd97
mov edx, dword [0x4a3c78]
mov esi, edx
inc esi
mov dword [0x4a3c78], esi
and ecx, edx
cmp eax, ecx
jle 0x430e8d
mov eax, dword [0x49e984]
inc eax
mov dword [0x49e984], eax
mov cx, word [0x49bf50]
mov dx, cx
dec edx
mov si, dx
mov word [0x49bf50], si
movsx edx, cx
and edx, 0xb3ae3b4c
xor eax, edx
mov edx, dword [0x4a9a38]
xor edx, eax
mov dword [0x4a9a38], edx
jmp 0x430e92
mov eax, 0x4813007d
mov ecx, esp
mov dword [ecx + 4], 0x32
mov dword [ecx], 0x8557
mov dword [esp + 0xe4], eax
call fcn.00402ec0
mov dword [esp + 0xb04], eax
mov dx, word [0x4984d8]
mov ax, dx
xor eax, 0x7f3f
mov dx, ax
mov word [0x4984d8], dx
mov eax, dword [esp + 0xb04]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x1c0]
mov ecx, eax
mov dword [esp + 0xe0], eax
call fcn.0044d920
sub esp, 4
mov ecx, esp
mov esi, dword [esp + 0xe0]
mov dword [ecx], esi
lea ecx, [esp + 0x68c]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xd8], eax
call fcn.00437b60
sub esp, 4
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0xd4], eax
call fcn.00404740
mov eax, dword [0x4a35a8]
or eax, 0x286b900a
mov dword [0x4a35a8], eax
mov eax, dword [esp + 0xb04]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x32
call fcn.004018d0
mov eax, dword [0x4a2800]
imul eax, eax, 0x1e27fb2
mov dword [0x4a2800], eax
mov eax, esp
lea ecx, [esp + 0x920]
mov dword [eax], ecx
lea eax, [esp + 0x1ac]
mov ecx, eax
mov dword [esp + 0xd0], eax
call fcn.0044d920
sub esp, 4
mov ecx, esp
mov esi, dword [esp + 0xd0]
mov dword [ecx], esi
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0xcc], eax
call fcn.00437b60
sub esp, 4
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0xc8], eax
call fcn.00404740
mov eax, dword [0x4a2c40]
shl eax, 8
mov ecx, dword [0x4a8498]
sar ecx, 8
sub eax, ecx
and eax, 0x24c76fac
mov ecx, dword [esp + 0xe4]
cmp ecx, eax
je 0x430ff4
mov eax, dword [0x49ce50]
imul eax, eax, 0x9be9586
mov dword [0x49ce50], eax
cmp dword [esp + 0x218], 0
je 0x431204
mov eax, dword [0x4a3468]
xor eax, 0xcff84376
mov dword [0x4a3468], eax
mov eax, esp
mov dword [eax + 4], 0x44
mov dword [eax], 0x1030
call fcn.00402ec0
mov dword [esp + 0xb00], eax
mov eax, dword [0x49e460]
or eax, 0x75ff36f6
mov dword [0x49e460], eax
mov eax, dword [esp + 0xb00]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x198]
mov ecx, eax
mov dword [esp + 0xc4], eax
call fcn.0044d920
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xc4]
mov dword [ecx], edx
lea ecx, [esp + 0x68c]
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xbc], eax
call fcn.00437b60
sub esp, 4
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0xb8], eax
call fcn.00404740
mov si, word [0x4993c2]
mov ax, si
and eax, 0x5842
mov si, ax
mov word [0x4993c2], si
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0xb632
call fcn.00402ec0
mov dword [esp + 0xafc], eax
mov si, word [0x4979de]
mov ax, si
xor eax, 0x24fc
mov si, ax
mov word [0x4979de], si
mov eax, dword [esp + 0xb00]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x44
call fcn.004018d0
mov eax, dword [0x4a2cd0]
imul eax, eax, 0x6b826d4e
mov ecx, dword [0x4a0eec]
and ecx, eax
mov dword [0x4a0eec], ecx
mov ecx, dword [esp + 0xb20]
call fcn.00421310
mov ecx, dword [esp + 0xafc]
mov edx, esp
mov dword [edx + 8], eax
mov dword [edx + 4], ecx
lea eax, [esp + 0x228]
mov dword [edx], eax
mov dword [esp + 0xb4], eax
call fcn.00454dd3
mov si, word [0x4979c0]
mov cx, si
or ecx, 0xa78e
mov si, cx
mov word [0x4979c0], si
mov ecx, dword [esp + 0xafc]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 3
mov dword [esp + 0xb0], eax
call fcn.004018d0
mov eax, dword [0x4a1d80]
mov ecx, dword [0x4aa618]
not ecx
or eax, ecx
mov ecx, dword [0x4a1ea8]
or eax, ecx
mov dword [0x4ab438], eax
mov eax, esp
mov ecx, dword [esp + 0xb4]
mov dword [eax], ecx
lea eax, [esp + 0x184]
mov ecx, eax
mov dword [esp + 0xac], eax
call fcn.0044d920
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xac]
mov dword [ecx], edx
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0xa8], eax
call fcn.00437b60
sub esp, 4
mov ecx, dword [esp + 0xac]
mov dword [esp + 0xa4], eax
call fcn.00404740
mov eax, dword [0x4ab754]
mov ecx, dword [0x49f31c]
or ecx, eax
mov dword [0x49f31c], ecx
mov eax, dword [0x4a22c0]
or eax, 0x194f78d1
mov dword [0x4a22c0], eax
mov eax, esp
mov dword [eax + 4], 5
mov dword [eax], 0x188a
call fcn.00402ec0
mov dword [esp + 0xaf8], eax
mov eax, dword [0x4aa374]
and eax, 0x624cf3b9
mov dword [0x4aa374], eax
mov eax, dword [esp + 0xaf8]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x170]
mov ecx, eax
mov dword [esp + 0xa0], eax
call fcn.0044d920
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xa0]
mov dword [ecx], edx
lea ecx, [esp + 0x68c]
mov dword [esp + 0x9c], eax
call fcn.00437b60
sub esp, 4
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x98], eax
call fcn.00404740
mov eax, dword [0x4a0968]
mov ecx, eax
dec ecx
mov dword [0x4a0968], ecx
imul eax, eax, 0x29d53a6e
or eax, 0xda34536d
cmp eax, 0x33289c44
jg 0x4312d5
mov eax, dword [0x4a8750]
or eax, 0x28d965dc
mov ecx, dword [0x49d890]
xor ecx, eax
mov dword [0x49d890], ecx
jmp 0x4312e4
mov eax, dword [0x4a9f0c]
or eax, 0xa724db4f
mov dword [0x4a9f0c], eax
mov eax, dword [esp + 0xaf8]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.004018d0
mov eax, dword [0x4a8c34]
mov ecx, eax
dec ecx
mov dword [0x4a8c34], ecx
add eax, 0xb4b31425
mov ecx, dword [0x49c948]
xor ecx, eax
mov dword [0x49c948], ecx
cmp dword [esp + 0x218], 0
je 0x431374
mov eax, dword [0x4a6efc]
add eax, 0x49101281
mov dword [0x4a6efc], eax
mov eax, dword [esp + 0xb20]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x68c]
call fcn.00437b60
sub esp, 4
mov ecx, dword [0x49f02c]
xor ecx, 0x740ef876
mov edx, dword [0x4a5a90]
and edx, ecx
mov dword [0x4a5a90], edx
mov dword [esp + 0x94], eax
mov eax, dword [0x4a96e8]
imul eax, eax, 0xce56235e
and eax, 0xde4957a4
mov ecx, dword [0x4a52e4]
imul ecx, eax
mov dword [0x4a52e4], ecx
mov eax, dword [0x493f6c]
mov ecx, esp
lea edx, [esp + 0x920]
mov dword [ecx], edx
call eax
sub esp, 4
mov dword [esp + 0x224], eax
mov eax, dword [0x4abde8]
xor eax, 0xffffffff
xor eax, 0x55a91feb
xor eax, 0xbae6618c
cmp eax, 0x7065301
jle 0x4313db
mov eax, dword [0x4a993c]
add eax, 0x81001e9
mov dword [0x4a993c], eax
cmp dword [esp + 0x224], 0
jne 0x4313fd
mov eax, dword [0x4ab3d0]
and eax, 0x61f92092
mov dword [0x4ab3d0], eax
jmp 0x4327b3
mov eax, dword [0x4a12e8]
inc eax
mov dword [0x4a12e8], eax
imul eax, eax, 0xcf4b8f3d
mov cx, word [0x49882e]
movsx edx, cx
add eax, edx
mov edx, dword [0x4a8238]
or edx, eax
mov dword [0x4a8238], edx
xorps xmm0, xmm0
movaps xmmword [esp + 0x6a0], xmm0
mov cx, word [0x497298]
mov ax, cx
inc eax
mov si, ax
mov word [0x497298], si
movsx eax, cx
add eax, 0x40376834
xor eax, 0xde98f632
mov edx, dword [0x4a2574]
or edx, eax
mov dword [0x4a2574], edx
mov word [esp + 0x6a0], 2
mov eax, dword [0x4a1928]
mov edx, dword [0x4a2460]
imul edx, edx, 0x9fe5ae23
xor eax, edx
not eax
mov dword [0x49fe0c], eax
mov eax, dword [0x493f74]
mov edx, dword [0x493f78]
mov edi, dword [esp + 0x224]
mov edi, dword [edi + 0xc]
mov edi, dword [edi]
mov edi, dword [edi]
mov dword [esp + 0x16c], edi
mov edi, dword [esp + 0x16c]
mov ebx, esp
mov dword [ebx], edi
mov dword [esp + 0x90], eax
call edx
sub esp, 4
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0x90]
call eax
sub esp, 4
mov dword [esp + 0x6a4], eax
mov eax, dword [0x49dca0]
mov edx, dword [0x4a6918]
and eax, edx
and eax, 0x6e57521
mov dword [0x4a6918], eax
mov eax, dword [0x493f70]
movzx edx, word [esp + 0x200]
mov edi, esp
mov dword [edi], edx
call eax
sub esp, 4
mov word [esp + 0x6a2], ax
mov ax, word [0x499074]
mov dx, ax
imul edx, edx, 0xfdfffbd4
mov ax, dx
mov word [0x499074], ax
cmp dword [esp + 0xb24], 0
je 0x431758
mov ax, word [0x49b76c]
movsx ecx, ax
sar ecx, 9
mov edx, dword [0x4ac378]
dec edx
mov dword [0x4ac378], edx
imul ecx, edx
or ecx, 0xacb19dab
mov edx, dword [0x4a6ba0]
sub edx, ecx
mov dword [0x4a6ba0], edx
mov eax, dword [esp + 0xb24]
mov ecx, 0x10624dd3
mul ecx
shr edx, 6
mov eax, esp
mov dword [eax + 4], edx
lea ecx, [esp + 0x6a0]
mov dword [eax], ecx
call fcn.00409880
mov dword [esp + 0x6b8], eax
mov si, word [0x494822]
movsx eax, si
shr eax, 4
mov si, word [0x4958a4]
mov cx, si
mov edx, ecx
dec edx
mov si, dx
mov word [0x4958a4], si
sub eax, ecx
mov si, word [0x497d68]
mov cx, si
and eax, ecx
and eax, 0xad23
mov si, ax
mov word [0x497d68], si
cmp dword [esp + 0x6b8], 0
jge 0x431604
mov eax, dword [0x49ff1c]
add eax, 0xbe3204c8
and eax, 0x8138
mov cx, word [0x49ace0]
mov dx, cx
xor edx, eax
mov cx, dx
mov word [0x49ace0], cx
jmp 0x4327b3
mov eax, 0xe1efa8d5
mov ecx, dword [0x4aa828]
sar ecx, 9
or ecx, 0xc26eb765
mov edx, dword [0x49f0bc]
and edx, ecx
mov dword [0x49f0bc], edx
mov ecx, dword [0x493f8c]
mov edx, dword [esp + 0x6b8]
mov esi, esp
lea edi, [esp + 0xb24]
mov dword [esi + 0xc], edi
mov dword [esi], edx
mov dword [esi + 0x10], 4
mov dword [esi + 8], 0x1006
mov dword [esi + 4], 0xffff
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], edi
call ecx
sub esp, 0x14
mov ecx, dword [0x4a6540]
sar ecx, 0xa
mov edx, dword [0x4a9a88]
or ecx, edx
or ecx, 0x53fcff63
mov edx, dword [0x4a3cc8]
and edx, ecx
mov dword [0x4a3cc8], edx
mov ecx, dword [0x493f8c]
mov edx, dword [esp + 0x6b8]
mov esi, esp
mov edi, dword [esp + 0x88]
mov dword [esi + 0xc], edi
mov dword [esi], edx
mov dword [esi + 0x10], 4
mov dword [esi + 8], 0x1005
mov dword [esi + 4], 0xffff
mov dword [esp + 0x84], eax
call ecx
sub esp, 0x14
mov ecx, dword [0x4ab84c]
mov edx, dword [esp + 0x8c]
cmp edx, ecx
mov dword [esp + 0x80], eax
jl 0x431753
mov eax, dword [0x4ab1f0]
mov ecx, eax
dec ecx
mov dword [0x4ab1f0], ecx
or eax, 0x4231e32b
cmp eax, 0x7e511e8e
jge 0x43173e
mov eax, dword [0x4a19b0]
inc eax
mov dword [0x4a19b0], eax
mov ecx, dword [0x4a4bd8]
and eax, ecx
mov ecx, dword [0x4a27f8]
mov edx, ecx
inc edx
mov dword [0x4a27f8], edx
imul ecx, ecx, 0x26e77b17
cmp eax, ecx
jge 0x431739
jmp 0x431739
jmp 0x43174e
mov eax, dword [0x49f0e4]
imul eax, eax, 0xa7dfb2f7
mov dword [0x49f0e4], eax
jmp 0x431753
jmp 0x431909
mov eax, dword [0x4a538c]
and eax, 0x9bafecd4
mov dword [0x4a538c], eax
mov eax, dword [0x493f90]
mov ecx, esp
mov dword [ecx + 8], 6
mov dword [ecx + 4], 1
mov dword [ecx], 2
call eax
sub esp, 0xc
mov dword [esp + 0x6b8], eax
mov eax, dword [0x4ab480]
or eax, 0xb509
mov dx, word [0x496922]
mov cx, dx
add ecx, eax
mov dx, cx
mov word [0x496922], dx
cmp dword [esp + 0x6b8], 0xffffffff
jne 0x4317d1
mov eax, dword [0x4a4ffc]
imul eax, eax, 0xbc8a2545
mov dword [0x4a4ffc], eax
jmp 0x4327b3
mov eax, dword [0x4a02f0]
inc eax
mov dword [0x4a02f0], eax
xor eax, 0x7191e8c5
mov ecx, dword [0x49d120]
sub ecx, 0x58ff100e
cmp eax, ecx
jle 0x43183b
mov eax, 0x116536c5
mov ecx, dword [0x4a3638]
cmp eax, ecx
jne 0x431836
mov eax, dword [0x49fcb4]
add eax, 0x61854527
mov ecx, dword [0x49d820]
and ecx, 0x68c0e44a
or ecx, 0x254b33fd
cmp eax, ecx
jge 0x431831
jmp 0x431831
jmp 0x431836
jmp 0x43183b
lea eax, [esp + 0x6a0]
mov ecx, dword [0x493f68]
mov edx, dword [esp + 0x6b8]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
mov dword [esi + 8], 0x10
call ecx
sub esp, 0xc
cmp eax, 0xffffffff
jne 0x431892
mov eax, dword [0x4ab0f8]
mov ecx, eax
dec ecx
mov dword [0x4ab0f8], ecx
add eax, 0x25370834
mov ecx, dword [0x4a3934]
imul ecx, eax
mov dword [0x4a3934], ecx
jmp 0x43270a
mov eax, 0x8628e516
mov ecx, dword [0x49d6f8]
sub eax, ecx
xor eax, 0xa834cfb7
cmp eax, 0x87ae73ca
jg 0x431904
mov eax, 0xd1902737
mov ecx, dword [0x49ce18]
dec ecx
mov dword [0x49ce18], ecx
cmp eax, ecx
jl 0x4318ff
mov eax, 0xcffc78b7
mov ecx, dword [0x49d7f0]
mov edx, ecx
dec edx
mov dword [0x49d7f0], edx
mov edx, dword [0x49e150]
add ecx, edx
mov edx, dword [0x49f630]
and ecx, edx
cmp eax, ecx
jl 0x4318fa
jmp 0x4318fa
jmp 0x4318ff
jmp 0x431904
jmp 0x431909
mov eax, dword [0x4a7544]
xor eax, 0xffffffff
imul eax, eax, 0x6e95c96a
or eax, 0xaef8e752
cmp eax, 0xda37f540
jg 0x431941
mov eax, dword [0x4a1508]
inc eax
mov dword [0x4a1508], eax
xor eax, 0x5319
mov cx, ax
mov word [0x494fe6], cx
mov eax, dword [0x493f88]
lea ecx, [esp + 0x68c]
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], eax
call fcn.00421310
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x74], eax
call fcn.00402600
mov ecx, dword [esp + 0x6b8]
mov edx, esp
mov esi, dword [esp + 0x74]
mov dword [edx + 8], esi
mov dword [edx + 4], eax
mov dword [edx], ecx
mov dword [edx + 0xc], 0
mov eax, dword [esp + 0x78]
call eax
sub esp, 0x10
mov dword [esp + 0x6b4], eax
mov eax, dword [0x49cfcc]
mov ecx, eax
dec ecx
mov dword [0x49cfcc], ecx
add eax, 0x3139fa7e
mov ecx, dword [0x49f898]
xor eax, ecx
cmp eax, 0x4d9aca85
jne 0x4319d1
mov ax, word [0x4989b0]
mov cx, ax
or ecx, 0x75db
mov ax, cx
mov word [0x4989b0], ax
lea eax, [esp + 0x68c]
mov ecx, dword [esp + 0x6b4]
mov dword [esp + 0x70], ecx
mov ecx, eax
call fcn.00421310
mov ecx, dword [esp + 0x70]
cmp ecx, eax
jae 0x431a1c
mov eax, dword [0x4a136c]
mov ecx, dword [0x49c480]
imul ecx, ecx, 0xd437c8f
sub eax, ecx
mov ecx, dword [0x49e754]
add ecx, eax
mov dword [0x49e754], ecx
jmp 0x43270a
mov eax, 0x61648fe0
mov ecx, dword [0x4a08a4]
mov edx, ecx
inc edx
mov dword [0x4a08a4], edx
and ecx, 0xe99a8412
cmp eax, ecx
jge 0x431aa8
mov eax, dword [0x4a33ec]
xor eax, 0xf984556
mov ecx, dword [0x49e044]
sar ecx, 0xa
cmp eax, ecx
jg 0x431a8f
mov ax, word [0x499744]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x499744], dx
movsx ecx, ax
imul ecx, ecx, 0x54644c31
add ecx, 0xa1a53cee
mov esi, dword [0x4abe7c]
sub esi, ecx
mov dword [0x4abe7c], esi
jmp 0x431aa3
mov eax, dword [0x4a17c4]
mov ecx, dword [0x4a1ecc]
imul ecx, eax
mov dword [0x4a1ecc], ecx
jmp 0x431aa8
mov ecx, dword [esp + 0xb20]
call fcn.0043a8a0
mov ecx, dword [0x49ccf8]
inc ecx
mov dword [0x49ccf8], ecx
cmp ecx, 0xcb6df80
jg 0x431adc
mov eax, dword [0x4a7afc]
add eax, 0x899e5114
mov dword [0x49f8b0], eax
jmp 0x431ae1
mov ax, word [0x495f44]
mov cx, ax
and ecx, 0x2f0b
mov ax, cx
mov word [0x495f44], ax
mov ecx, dword [0x493f80]
mov edx, dword [esp + 0x6b8]
mov esi, esp
lea edi, [esp + 0x228]
mov dword [esi + 4], edi
mov dword [esi], edx
mov dword [esi + 0xc], 0
mov dword [esi + 8], 0x400
call ecx
sub esp, 0x10
mov dword [esp + 0x6b4], eax
mov eax, dword [0x4a1988]
shl eax, 9
imul eax, eax, 0xd9fe4478
or eax, 0x2e8df955
cmp eax, 0xf6288901
je 0x431b5b
mov eax, dword [0x4aa014]
xor eax, 0xbdaa466c
mov dword [0x4aa014], eax
cmp dword [esp + 0x6b4], 0
jle 0x431b8c
mov eax, dword [esp + 0x210]
mov ecx, dword [esp + 0x214]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], eax
call fcn.0043a0b0
cmp eax, 0
je 0x431bb6
mov eax, 0xf7cf9f0b
mov ecx, dword [0x4ab1b0]
xor ecx, 0xffffffff
cmp eax, ecx
jge 0x431bb1
mov eax, dword [0x4a02f8]
xor eax, 0x6f9fbdfe
mov dword [0x4a02f8], eax
jmp 0x43248e
mov ax, word [0x4981f2]
mov cx, ax
imul ecx, ecx, 0x1349a35b
mov ax, cx
mov word [0x4981f2], ax
mov ecx, dword [esp + 0xb20]
mov dword [esp + 0x6c], ecx
call fcn.00421310
mov ecx, dword [esp + 0x6b4]
add eax, ecx
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x6c]
call fcn.0044dbb0
sub esp, 8
mov dx, word [0x494db0]
mov ax, dx
imul eax, eax, 0xb1408301
mov dx, ax
mov word [0x494db0], dx
mov eax, dword [esp + 0xb20]
mov ecx, eax
call fcn.00439ff0
cmp eax, 0
jne 0x431c43
mov eax, dword [0x4a45f8]
add eax, 0xfaaa66ad
mov dword [0x4a45f8], eax
jmp 0x43248e
mov eax, dword [0x4a02f4]
not eax
add eax, 0x62c8f68a
mov ecx, dword [0x4a3fa4]
sar ecx, 3
sub ecx, 0x2a0fa09a
xor ecx, 0xd37001f2
cmp eax, ecx
jg 0x431c84
mov ax, word [0x497640]
movsx ecx, ax
mov edx, dword [0x4a1968]
imul edx, ecx
mov dword [0x4a1968], edx
mov ecx, dword [esp + 0xb20]
mov eax, dword [esp + 0x6b4]
mov edx, esp
mov dword [edx + 4], eax
lea eax, [esp + 0x228]
mov dword [edx], eax
call fcn.004390c0
sub esp, 8
mov ecx, dword [0x4a3908]
imul ecx, ecx, 0xfdd377ed
mov dword [0x4a3908], ecx
cmp dword [esp + 0x208], 0
mov dword [esp + 0x68], eax
jge 0x432018
mov eax, 0xf4adc818
mov dword [0x4a9380], 0x5f825fec
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x188a
mov dword [esp + 0x64], eax
call fcn.00402ec0
mov dword [esp + 0xaf4], eax
mov dx, word [0x496ee8]
movsx eax, dx
sar eax, 8
and eax, 0x83adf93d
mov ecx, dword [esp + 0x64]
cmp ecx, eax
jge 0x431d2c
mov eax, dword [0x4abea4]
add eax, 0xc331574f
mov dword [0x4abea4], eax
jmp 0x431d44
mov ax, word [0x495bae]
mov cx, ax
add ecx, 0x635ec7d2
mov ax, cx
mov word [0x495bae], ax
mov ecx, dword [esp + 0xb20]
mov eax, dword [esp + 0xaf4]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x158]
mov dword [esp + 0x60], ecx
mov ecx, eax
mov dword [esp + 0x5c], eax
call fcn.004028f0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x5c]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x58], eax
call fcn.0043c600
sub esp, 8
mov dword [esp + 0x208], eax
mov ecx, dword [esp + 0x5c]
call fcn.00437b50
mov eax, dword [0x4a7778]
imul eax, eax, 0xa25eb620
add eax, 0xc3d03fd
mov ecx, dword [0x4aada4]
sub ecx, eax
mov dword [0x4aada4], ecx
mov eax, dword [esp + 0xaf4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.004018d0
mov eax, dword [0x4a18fc]
imul eax, eax, 0x548b3f2a
mov ecx, dword [0x4a5038]
inc ecx
mov dword [0x4a5038], ecx
imul ecx, ecx, 0x531a312a
cmp eax, ecx
jge 0x431e08
mov eax, dword [0x4a3c1c]
xor eax, 0x49d0c5ec
mov dword [0x4a3c1c], eax
cmp dword [esp + 0x208], 0
jl 0x432009
mov eax, dword [0x49f024]
and eax, 0x9f9770ae
mov dword [0x49f024], eax
mov eax, dword [esp + 0x208]
add eax, 4
mov dword [esp + 0x208], eax
mov eax, dword [0x4aa254]
xor eax, 0x4159eead
mov dword [0x4aa254], eax
mov eax, dword [esp + 0xb20]
mov ecx, esp
mov dword [ecx], eax
call fcn.0042fb80
mov dword [esp + 0x204], eax
mov eax, dword [0x49d284]
mov ecx, eax
inc ecx
mov dword [0x49d284], ecx
or eax, 0xd1b0
mov dx, word [0x4987b6]
mov cx, dx
add ecx, eax
mov dx, cx
mov word [0x4987b6], dx
cmp dword [esp + 0x204], 0
jge 0x431ffa
mov eax, dword [0x4a9dc8]
or eax, 0x7d44b320
mov dword [0x4a4714], eax
mov eax, esp
mov dword [eax + 4], 0xb
mov dword [eax], 0x6f9b
call fcn.00402ec0
mov dword [esp + 0xaf0], eax
mov eax, dword [0x4a2748]
or eax, 0x619cf151
mov ecx, dword [0x49d1ec]
xor ecx, eax
mov dword [0x49d1ec], ecx
mov ecx, dword [esp + 0xb20]
mov eax, dword [esp + 0xaf0]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x144]
mov dword [esp + 0x54], ecx
mov ecx, eax
mov dword [esp + 0x50], eax
call fcn.004028f0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x4c], eax
call fcn.0043c600
sub esp, 8
mov dword [esp + 0x6b4], eax
mov ecx, dword [esp + 0x50]
call fcn.00437b50
mov eax, dword [0x49ca14]
add eax, 0xc0a48749
mov ecx, dword [0x4aa5b8]
xor ecx, 0xffffffff
add ecx, 0x3f1dcae5
or ecx, 0x110d68b
cmp eax, ecx
jl 0x431f6a
mov eax, dword [0x4abb3c]
xor eax, 0xca2f1013
mov dword [0x4abb3c], eax
jmp 0x431f91
mov ax, word [0x496a42]
movsx ecx, ax
mov edx, dword [0x4a45cc]
not edx
sub ecx, edx
or ecx, 0xba1c0393
mov edx, dword [0x49d270]
sub edx, ecx
mov dword [0x49d270], edx
mov eax, dword [esp + 0xaf0]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xb
call fcn.004018d0
mov eax, dword [0x49db24]
mov ecx, dword [0x4abdf4]
sub ecx, eax
mov dword [0x4abdf4], ecx
cmp dword [esp + 0x6b4], 0
jl 0x431fdd
mov eax, dword [0x4a0738]
or eax, 0x8f4272ec
mov dword [0x4a0738], eax
jmp 0x43248e
mov eax, dword [0x4a729c]
mov ecx, eax
inc ecx
mov dword [0x4a729c], ecx
mov ecx, dword [0x4a66f8]
imul ecx, eax
mov dword [0x4a66f8], ecx
mov eax, dword [0x4a4614]
or eax, 0x19fbeb65
mov dword [0x4a4614], eax
mov eax, dword [0x4a9fd8]
add eax, 0x14330a05
mov dword [0x4a9fd8], eax
mov eax, dword [0x4a5100]
add eax, 0x7f425596
mov ecx, dword [0x4a2718]
and ecx, eax
mov dword [0x4a2718], ecx
cmp dword [esp + 0x204], 0
jl 0x4320c1
mov eax, dword [0x4a934c]
mov ecx, dword [0x4a10e4]
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0xb658f6c1
jl 0x432074
mov eax, dword [0x4a0a88]
sar eax, 3
and eax, 0x8e275d7a
mov ecx, dword [0x49cf48]
sub ecx, eax
mov dword [0x49cf48], ecx
mov eax, dword [esp + 0xb20]
mov ecx, eax
call fcn.00421310
sub eax, dword [esp + 0x208]
cmp eax, dword [esp + 0x204]
jb 0x4320aa
mov eax, dword [0x49c9fc]
add eax, 0xd40ab2c1
mov dword [0x49c9fc], eax
jmp 0x43248e
mov ax, word [0x49a8a6]
movsx ecx, ax
mov edx, dword [0x49c674]
and edx, ecx
mov dword [0x49c674], edx
mov eax, dword [0x49d61c]
add eax, 0x23a6a0fa
mov dword [0x49d61c], eax
cmp dword [esp + 0xb28], 0
je 0x4323fb
test byte [esp + 0x1ff], 1
jne 0x4323fb
mov eax, dword [0x4a8728]
xor eax, 0x9a7cee5e
mov ecx, dword [0x4ac118]
or ecx, eax
mov dword [0x4ac118], ecx
mov eax, dword [esp + 0xb20]
mov ecx, eax
call fcn.00421310
cmp eax, 0x4000
jbe 0x4323d5
mov eax, dword [0x49eb7c]
add eax, 0xa27cc26a
and eax, 0x86d6763d
mov ecx, dword [0x4ac680]
mov edx, ecx
dec edx
mov dword [0x4ac680], edx
and ecx, 0x3be5bda2
or ecx, 0x59e788c5
cmp eax, ecx
jle 0x432171
mov eax, dword [0x49cc80]
mov ecx, eax
inc ecx
mov dword [0x49cc80], ecx
imul eax, eax, 0x5b2824ce
mov ecx, dword [0x49ea58]
add ecx, eax
mov dword [0x49ea58], ecx
mov byte [esp + 0x1ff], 1
mov ax, word [0x4955e0]
movsx ecx, ax
mov edx, 0xbccc0043
sub edx, ecx
mov ecx, dword [0x49f91c]
sub ecx, 0x20c55090
cmp edx, ecx
jne 0x4321cd
mov eax, 0xd6dc3c2f
mov ecx, dword [0x4a2eac]
mov edx, ecx
inc edx
mov dword [0x4a2eac], edx
cmp eax, ecx
jl 0x4321c8
mov eax, dword [0x4a6ca0]
add eax, 0xd6cf4ed2
mov dword [0x4a6ca0], eax
jmp 0x4321cd
mov eax, dword [esp + 0xb20]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x130]
call fcn.004241e0
sub esp, 4
mov dword [0x49ef78], 0x3f0a45c6
cmp dword [esp + 0x208], 0
mov dword [esp + 0x48], eax
jl 0x43226c
mov eax, dword [0x4a7c04]
shl eax, 9
mov ecx, dword [0x4a71b4]
add ecx, eax
mov dword [0x4a71b4], ecx
mov eax, dword [esp + 0x208]
mov ecx, esp
mov dword [ecx], 0
lea ecx, [esp + 0x130]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x40], eax
call fcn.00404750
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x40]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov ecx, dword [esp + 0x44]
call fcn.0042d3d0
sub esp, 8
mov ecx, dword [0x4a7854]
add ecx, 0xf4ead573
mov dword [0x4a7854], ecx
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x130]
lea ecx, [esp + 0x920]
mov dword [0x4a91d0], 0x71d54b4
mov edx, dword [esp + 0xb28]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.004188b0
cmp eax, 0
jne 0x432368
mov eax, dword [0x49dbe4]
mov ecx, eax
inc ecx
mov dword [0x49dbe4], ecx
mov dx, word [0x49be44]
mov cx, dx
shl ecx, 8
neg ecx
lea eax, [eax + ecx + 0x621f1fcd]
mov dx, word [0x4944ee]
mov cx, dx
add ecx, eax
mov dx, cx
mov word [0x4944ee], dx
mov dword [esp + 0x208], 0xffffffff
mov eax, dword [0x4a32a4]
or eax, 0xb8d295d0
mov ecx, dword [0x4a4474]
and ecx, eax
mov dword [0x4a4474], ecx
mov ecx, dword [esp + 0xb20]
call fcn.0043a8a0
mov eax, dword [0x4a5514]
dec eax
mov dword [0x4a5514], eax
or eax, 0xf52c99b6
mov ecx, dword [0x4a9ab0]
mov esi, ecx
dec esi
mov dword [0x4a9ab0], esi
cmp eax, ecx
jne 0x432358
mov eax, dword [0x4a59f0]
mov ecx, eax
inc ecx
mov dword [0x4a59f0], ecx
mov dx, word [0x49bae0]
mov cx, dx
xor ecx, eax
mov dx, cx
mov word [0x49bae0], dx
mov dword [esp + 0x12c], 0xd
jmp 0x432396
mov ax, word [0x4957be]
mov cx, ax
mov ax, word [0x49a262]
mov dx, ax
xor ecx, edx
xor ecx, 0xfa4e
mov ax, cx
mov word [0x49a262], ax
mov dword [esp + 0x12c], 0
lea ecx, [esp + 0x130]
call fcn.00404740
mov ecx, dword [esp + 0x12c]
test ecx, ecx
mov dword [esp + 0x38], ecx
je 0x4323d0
jmp 0x4323ba
mov eax, dword [esp + 0x38]
sub eax, 0xd
mov dword [esp + 0x34], eax
je 0x43248e
jmp 0x432892
jmp 0x4323d5
mov eax, dword [0x4aafdc]
mov ecx, eax
inc ecx
mov dword [0x4aafdc], ecx
mov dx, word [0x4942bc]
mov cx, dx
lea eax, [ecx + eax + 1]
mov dx, ax
mov word [0x4942bc], dx
mov ax, word [0x4979e0]
mov cx, ax
add ecx, 0xb9ea6a1a
mov ax, cx
mov word [0x4979e0], ax
cmp dword [esp + 0xb24], 0x3b0d
jne 0x43246f
mov eax, dword [0x4a37c8]
xor eax, 0xf3c29f25
mov dword [0x4a37c8], eax
mov eax, dword [esp + 0xb20]
mov ecx, eax
call fcn.00421310
cmp eax, 0x500000
jbe 0x432460
mov eax, dword [0x49feac]
add eax, 0x71d5c5aa
mov dword [0x49feac], eax
jmp 0x43248e
mov eax, dword [0x4a3288]
or eax, 0xed52474d
mov dword [0x4a3288], eax
mov eax, dword [0x4a4d54]
inc eax
mov dword [0x4a4d54], eax
and eax, 0xea56b181
xor eax, 0x26148540
mov dword [0x4a8a18], eax
jmp 0x431ae1
mov eax, dword [0x4a6cfc]
mov ecx, dword [0x4aa7b8]
sub ecx, eax
mov dword [0x4aa7b8], ecx
cmp dword [esp + 0x208], 0
jl 0x432586
mov eax, 0xdbfcb129
mov ecx, dword [0x4a6874]
xor ecx, 0x1d000410
mov dword [0x4a6874], ecx
mov ecx, dword [esp + 0xb20]
mov edx, dword [esp + 0x208]
mov esi, esp
mov dword [esi], 0
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], edx
call fcn.00404750
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x28]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov ecx, dword [esp + 0x30]
call fcn.0042d3d0
sub esp, 8
mov ecx, dword [0x49caa0]
mov edx, ecx
inc edx
mov dword [0x49caa0], edx
and ecx, 0x92cc76f0
mov edx, dword [esp + 0x2c]
cmp edx, ecx
mov dword [esp + 0x24], eax
jne 0x432581
mov eax, 0xf9266c07
mov ecx, dword [0x4ac540]
mov edx, ecx
inc edx
mov dword [0x4ac540], edx
imul ecx, ecx, 0x8089b4fe
add ecx, 0x3c4a5f40
cmp eax, ecx
jle 0x43257c
mov eax, 0x856943b4
mov ecx, dword [0x4a594c]
shl ecx, 3
mov edx, dword [0x49c42c]
or ecx, edx
cmp eax, ecx
je 0x432577
jmp 0x432577
jmp 0x43257c
jmp 0x432581
jmp 0x432586
mov eax, dword [0x4ab9ec]
sar eax, 6
xor eax, 0x68273dd1
mov ecx, dword [0x4abd58]
and ecx, eax
mov dword [0x4abd58], ecx
cmp dword [esp + 0xb28], 0
je 0x4326e7
test byte [esp + 0x1ff], 1
jne 0x4326e7
lea eax, [esp + 0x920]
mov ecx, dword [0x4a3bf4]
add ecx, 0x8119b7ed
mov dword [0x4a3bf4], ecx
mov ecx, dword [esp + 0xb28]
mov edx, dword [esp + 0xb20]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004188b0
cmp eax, 0
jne 0x4326b1
mov eax, 0xddd71e4e
mov ecx, dword [0x49e088]
mov dx, word [0x496bfa]
mov si, dx
dec esi
mov dx, si
mov word [0x496bfa], dx
movsx esi, dx
or ecx, esi
cmp eax, ecx
jl 0x432642
mov ax, word [0x498908]
mov cx, ax
add ecx, 0x1c9fc21a
mov ax, cx
mov word [0x498908], ax
mov ecx, dword [esp + 0xb20]
call fcn.0043a8a0
mov ecx, dword [0x4a0f34]
mov eax, ecx
dec eax
mov dword [0x4a0f34], eax
cmp ecx, 0xcd78febb
jle 0x43267d
mov eax, dword [0x49c684]
imul eax, eax, 0xe2f093b
mov dword [0x49c684], eax
jmp 0x4326ac
mov eax, dword [0x49e8d0]
mov ecx, eax
inc ecx
mov dword [0x49e8d0], ecx
mov ecx, dword [0x4aa764]
mov edx, ecx
dec edx
mov dword [0x4aa764], edx
or eax, ecx
mov ecx, dword [0x49f3bc]
shl ecx, 4
or eax, ecx
mov dword [0x4a9f90], eax
jmp 0x4326b1
mov eax, dword [0x4a5aec]
xor eax, 0xffffffff
xor eax, 0xf2ea8df4
cmp eax, 0x1385e4e7
jle 0x4326d8
mov dword [0x4ac4f8], 0x1c1db0ae
jmp 0x4326e2
mov dword [0x49ddac], 0x41aedd92
jmp 0x4326e7
mov ax, word [0x4986e8]
movsx ecx, ax
imul ecx, ecx, 0x50e81d18
and ecx, 0xb1ba7878
mov edx, dword [0x4a7d98]
add edx, ecx
mov dword [0x4a7d98], edx
mov eax, dword [0x493f98]
mov ecx, dword [esp + 0x6b8]
mov edx, esp
mov dword [edx], ecx
mov dword [edx + 4], 2
call eax
sub esp, 8
mov si, word [0x4973f4]
movsx ecx, si
not ecx
imul ecx, ecx, 0x57569958
mov edx, dword [0x49c7c8]
xor edx, ecx
mov dword [0x49c7c8], edx
mov ecx, dword [0x493f64]
mov edx, dword [esp + 0x6b8]
mov edi, esp
mov dword [edi], edx
mov dword [esp + 0x20], eax
call ecx
sub esp, 4
mov ecx, dword [0x4a4978]
mov edx, dword [0x4a2688]
sar edx, 7
and ecx, edx
or ecx, 0x70f65844
cmp ecx, 0x9000c882
mov dword [esp + 0x1c], eax
jl 0x4327ae
mov ax, word [0x49a346]
movsx ecx, ax
sar ecx, 7
imul ecx, ecx, 0x8a79b3b3
add ecx, 0x1455a728
mov edx, dword [0x49ecdc]
imul edx, ecx
mov dword [0x49ecdc], edx
jmp 0x4327b3
mov eax, esp
lea ecx, [esp + 0x920]
mov dword [eax], ecx
mov dword [eax + 4], 0xe4
call fcn.00435880
mov eax, dword [0x49e69c]
mov ecx, 0x155d1cf0
sub ecx, eax
mov dx, word [0x49b63e]
mov ax, dx
xor ecx, eax
xor ecx, 0xbbe8
mov dx, cx
mov word [0x49b63e], dx
mov eax, esp
lea ecx, [esp + 0xa04]
mov dword [eax], ecx
mov dword [eax + 4], 0xe4
call fcn.00435880
mov eax, dword [0x49ca2c]
mov ecx, dword [0x4a0a30]
add ecx, eax
mov dword [0x4a0a30], ecx
mov eax, esp
lea ecx, [esp + 0x6bc]
mov dword [eax], ecx
mov dword [eax + 4], 0x264
call fcn.00435880
mov eax, dword [0x49eb30]
and eax, 0x37edf71d
mov dword [0x49eb30], eax
mov eax, esp
lea ecx, [esp + 0x228]
mov dword [eax], ecx
mov dword [eax + 4], 0x464
call fcn.00435880
mov dx, word [0x498118]
movsx eax, dx
not eax
mov ecx, dword [0x4a0ce8]
sar ecx, 2
or eax, ecx
mov ecx, dword [0x49ef00]
sub ecx, eax
mov dword [0x49ef00], ecx
lea ecx, [esp + 0x68c]
call fcn.00404740
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
int3