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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xae0
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 + 0xad8], eax
mov dword [esp + 0xad4], ecx
mov dword [esp + 0xad0], edx
mov dword [esp + 0xacc], esi
mov dword [esp + 0xac8], edi
mov eax, dword [0x491678]
xor eax, 0x9f0411c1
or eax, 0x60a9ee1c
mov ecx, dword [0x4917d4]
and ecx, eax
mov dword [0x4917d4], ecx
mov eax, esp
mov dword [eax + 4], 8
mov dword [eax], 0x48ce
call fcn.004066f0
mov dword [esp + 0xac4], eax
mov eax, dword [0x491dec]
add eax, 0x91cae460
mov dword [0x491dec], eax
mov eax, dword [esp + 0xac4]
mov ecx, dword [esp + 0xac8]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.004559f0
mov dword [esp + 0xa9c], eax
mov bx, word [0x4923de]
mov ax, bx
imul eax, eax, 0x6db00b2c
mov bx, word [0x4923aa]
mov cx, bx
or ecx, eax
mov bx, cx
mov word [0x4923aa], bx
mov eax, dword [esp + 0xac4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 8
call fcn.004260a0
mov eax, dword [0x491780]
inc eax
mov dword [0x491780], eax
or eax, 0x181aa72d
mov ecx, dword [0x491e34]
imul ecx, eax
mov dword [0x491e34], ecx
cmp dword [esp + 0xa9c], 0
jne 0x43a0c5
mov eax, dword [0x491e14]
imul eax, eax, 0xecc94c8a
or eax, 0x34ce3d1c
mov ecx, dword [0x491904]
xor ecx, eax
mov dword [0x491904], ecx
cmp dword [esp + 0xad8], 0
je 0x439fe0
mov eax, dword [0x491a8c]
imul eax, eax, 0x5dc821f1
mov ecx, dword [0x4916b4]
and ecx, eax
mov dword [0x4916b4], ecx
mov ecx, dword [esp + 0xad0]
call fcn.0040b250
mov dx, word [0x492412]
mov ax, dx
inc eax
mov si, ax
mov word [0x492412], si
movsx eax, dx
xor eax, 0xd4e0c818
cmp eax, 0x7b3bff7f
je 0x439fdb
mov eax, dword [0x491f0c]
or eax, 0xed7d5f15
mov dword [0x491544], eax
jmp 0x43c7ff
mov word [0x49243e], 0x68a
mov eax, dword [esp + 0xad0]
mov ecx, dword [esp + 0xacc]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.0044c4a0
mov dword [esp + 0xa98], eax
mov dword [0x491ea0], 0xf8581a16
cmp dword [esp + 0xa98], 0
jg 0x43a055
mov eax, dword [0x491948]
add eax, 0x481a07ea
mov ecx, dword [0x491a8c]
or ecx, eax
mov dword [0x491a8c], ecx
mov ecx, dword [esp + 0xad0]
call fcn.0040b250
mov eax, dword [0x491980]
xor eax, 0x3e6fc8c6
mov dword [0x491980], eax
mov eax, 0xcc034924
mov ecx, dword [0x4916e0]
cmp eax, ecx
jne 0x43a0c0
mov eax, 0x17f523da
mov ecx, dword [0x491640]
sar ecx, 5
cmp eax, ecx
jl 0x43a0ac
mov eax, 0x693e7b77
mov ecx, dword [0x491c48]
imul ecx, ecx, 0xf01ff150
add ecx, 0x3b673b0e
cmp eax, ecx
jne 0x43a0a2
jmp 0x43a0a7
jmp 0x43a0a7
jmp 0x43a0bb
mov eax, dword [0x491e28]
or eax, 0x422ae75f
mov dword [0x491e28], eax
jmp 0x43a0c0
jmp 0x43c7ff
mov eax, 0xec61ff19
mov cx, word [0x492198]
movsx edx, cx
cmp eax, edx
jne 0x43a0e5
mov word [0x49235e], 0xe0db
mov eax, 0xefffd7f3
mov ecx, dword [0x491988]
mov edx, dword [0x4915b4]
and edx, ecx
mov dword [0x4915b4], edx
mov ecx, dword [0x4916d0]
add ecx, 0xf27b6316
mov dword [0x4916d0], ecx
mov ecx, dword [0x491c98]
add ecx, 0xd6bbf7f8
mov dword [0x491c98], ecx
mov ecx, dword [0x4918ac]
add ecx, 0x37d76b3b
cmp eax, ecx
jl 0x43a17b
mov eax, 0xc4660d04
mov ecx, dword [0x491938]
mov edx, ecx
inc edx
mov dword [0x491938], edx
sub ecx, 0x6cae6399
xor ecx, 0x465205f
cmp eax, ecx
jg 0x43a176
mov ax, word [0x4920ca]
mov cx, ax
and ecx, 0xa987
mov ax, cx
mov word [0x4920ca], ax
jmp 0x43a17b
mov ax, word [0x491f4c]
movsx ecx, ax
not ecx
mov edx, dword [0x491538]
mov esi, edx
inc esi
mov dword [0x491538], esi
add ecx, edx
mov edx, dword [0x491b28]
lea ecx, [edx + ecx - 0x4c475cf9]
mov dword [0x491b28], ecx
mov ecx, dword [0x491748]
add ecx, 0x4c440420
mov dword [0x491748], ecx
lea ecx, [esp + 0x67c]
call fcn.00425880
mov ecx, dword [0x49195c]
add ecx, 0x3e42f2f0
mov dword [0x49195c], ecx
mov ecx, dword [0x491c44]
dec ecx
mov dword [0x491c44], ecx
or ecx, 0xf57
mov di, word [0x49240e]
mov dx, di
add edx, ecx
mov di, dx
mov word [0x49240e], di
mov di, word [0x4923c4]
mov cx, di
dec ecx
mov di, cx
mov word [0x4923c4], di
movsx ecx, di
or ecx, 0x91c5305b
mov edx, dword [0x491538]
mov di, word [0x492208]
mov si, di
inc esi
mov bx, si
mov word [0x492208], bx
movsx esi, di
or edx, esi
cmp ecx, edx
mov dword [esp + 0x128], eax
jg 0x43a264
mov eax, dword [0x491d30]
and eax, 0x97da5a4f
mov dword [0x491d30], eax
jmp 0x43a285
mov eax, dword [0x491a7c]
xor eax, 0x5756
mov cx, word [0x492100]
mov dx, cx
imul edx, eax
mov cx, dx
mov word [0x492100], cx
mov eax, 0x59c333e4
mov ecx, dword [0x4919d8]
mov dx, word [0x4921e0]
mov si, dx
and esi, ecx
mov dx, si
mov word [0x4921e0], dx
mov dword [esp + 0x214], 0
mov dword [esp + 0x210], 0
mov dx, word [0x491f72]
mov cx, dx
mov esi, ecx
inc esi
mov dx, si
mov word [0x491f72], dx
mov dx, word [0x492386]
mov si, dx
lea ecx, [esi + ecx + 1]
mov dx, cx
mov word [0x492386], dx
mov ecx, dword [0x491a34]
cmp eax, ecx
jl 0x43a308
mov eax, dword [0x4919b4]
or eax, 0x24428026
mov dword [0x4919b4], eax
mov dword [esp + 0x208], 0xffffffff
mov dword [esp + 0x204], 0xffffffff
mov eax, dword [0x4915cc]
imul eax, eax, 0x3376dbe0
mov dword [0x4915cc], eax
mov dword [esp + 0x200], 0x50
mov eax, dword [0x491cf4]
add eax, 0x4f9ae380
mov dword [0x491cf4], eax
mov byte [esp + 0x1ff], 0
mov eax, dword [0x49148c]
mov ecx, eax
dec ecx
mov dword [0x49148c], ecx
imul eax, eax, 0xffeabf3b
mov ecx, dword [0x491520]
sar ecx, 6
cmp eax, ecx
jg 0x43a398
mov ax, word [0x49229c]
mov cx, ax
and ecx, 0xa441
mov ax, word [0x4922ac]
mov dx, ax
or edx, ecx
mov ax, dx
mov word [0x4922ac], ax
mov eax, esp
mov dword [eax], 0
call fcn.00450e50
add eax, 0x258
adc edx, 0
mov dword [esp + 0x210], eax
mov dword [esp + 0x214], edx
mov eax, dword [0x491940]
mov edx, eax
dec edx
mov dword [0x491940], edx
add eax, 0x4041f512
mov edx, dword [0x491e18]
shl edx, 0xa
cmp eax, edx
jne 0x43a3ee
mov eax, dword [0x491698]
add eax, 0xfb7b0ff8
mov dword [0x491698], eax
mov byte [esp + 0x6ae], 0
mov eax, dword [0x491c48]
mov ecx, dword [0x491f04]
add ecx, eax
mov dword [0x491f04], ecx
mov eax, dword [esp + 0xac8]
mov ecx, esp
mov dword [ecx], eax
call fcn.00452220
mov dword [esp + 0x224], eax
mov eax, dword [0x491814]
or eax, 0x41adf250
mov dword [0x491814], eax
cmp dword [esp + 0x224], 0x7f
jle 0x43a45f
mov ax, word [0x492446]
movsx ecx, ax
xor ecx, 0x623c2bad
mov edx, dword [0x491d40]
sub edx, ecx
mov dword [0x491d40], edx
jmp 0x43c72d
mov eax, dword [0x491938]
imul eax, eax, 0x397c1a5a
mov dword [0x491938], eax
mov eax, dword [esp + 0xac8]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x9ca]
mov dword [ecx], eax
call fcn.00455370
mov ecx, dword [0x4915d0]
and ecx, 0x62e03f10
cmp ecx, 0xf94dd11c
mov dword [esp + 0x124], eax
jg 0x43a4d3
mov eax, dword [0x491b08]
mov ecx, dword [0x491ec0]
mov edx, ecx
inc edx
mov dword [0x491ec0], edx
lea eax, [eax + ecx + 1]
or eax, 0x4ac91647
mov ecx, dword [0x491b5c]
sub ecx, eax
mov dword [0x491b5c], ecx
mov eax, dword [esp + 0x224]
sub eax, 1
mov dword [esp + 0x220], eax
mov eax, dword [esp + 0x220]
mov ecx, dword [esp + 0x224]
sub ecx, 6
cmp eax, ecx
jl 0x43a60e
mov eax, dword [0x491594]
imul eax, eax, 0x2134ea7a
mov dword [0x491594], eax
mov eax, dword [esp + 0x220]
movsx eax, byte [esp + eax + 0x9ca]
cmp eax, 0x3a
jne 0x43a5e9
mov ax, word [0x4920c4]
movsx ecx, ax
xor ecx, 0x195658fc
mov edx, dword [0x4916b8]
and edx, ecx
mov dword [0x4916b8], edx
mov ecx, dword [esp + 0x220]
mov byte [esp + ecx + 0x9ca], 0
mov ecx, dword [0x4918b4]
mov edx, ecx
inc edx
mov dword [0x4918b4], edx
or ecx, 0x8984c78b
mov edx, dword [0x491628]
add edx, ecx
mov dword [0x491628], edx
mov ecx, dword [esp + 0x220]
mov dword [esp + 0x224], ecx
mov ax, word [0x4923c0]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x4923c0], ax
movsx ecx, ax
imul ecx, ecx, 0x8251ef30
xor ecx, 0x11ffa78e
mov edx, dword [0x491594]
imul edx, ecx
mov dword [0x491594], edx
mov ecx, dword [esp + 0x220]
lea edx, [esp + 0x9ca]
lea ecx, [ecx + edx + 1]
mov edx, esp
mov dword [edx], ecx
call fcn.0045616d
mov dword [esp + 0x200], eax
mov eax, dword [0x49190c]
xor eax, 0xedbb081d
mov dword [0x49190c], eax
jmp 0x43a60e
mov eax, dword [0x491624]
and eax, 0x5dfd984c
mov dword [0x491624], eax
mov eax, dword [esp + 0x220]
add eax, 0xffffffff
mov dword [esp + 0x220], eax
jmp 0x43a4e4
mov eax, dword [0x49166c]
sar eax, 9
and eax, 0x6aae8e5e
mov dword [0x491b78], eax
mov dword [esp + 0x220], 0
mov eax, dword [esp + 0x220]
cmp eax, dword [esp + 0x224]
jg 0x43a899
mov eax, dword [0x491e54]
and eax, 0xeff3d70f
mov dword [0x491e54], eax
mov eax, dword [esp + 0x220]
mov cl, byte [esp + eax + 0x9ca]
mov byte [esp + eax + 0x8fc], cl
mov eax, dword [0x491c74]
xor eax, 0x54dd8a0a
mov dword [0x491c74], eax
mov eax, dword [esp + 0x220]
movsx eax, byte [esp + eax + 0x8fc]
cmp eax, 0x2f
jne 0x43a85a
mov ax, word [0x492306]
mov cx, ax
xor ecx, 0x955
mov ax, cx
mov word [0x492306], ax
mov ecx, dword [esp + 0x220]
mov byte [esp + ecx + 0x8fc], 0
mov word [0x491f72], 0x8859
mov ecx, dword [esp + 0x220]
mov dword [esp + 0x21c], ecx
mov eax, dword [esp + 0x21c]
cmp eax, dword [esp + 0x224]
jg 0x43a802
mov eax, 0x127c069e
mov cx, word [0x492246]
mov dx, cx
inc edx
mov cx, dx
mov word [0x492246], cx
movsx edx, cx
and edx, 0xd4120900
cmp eax, edx
jge 0x43a77d
mov eax, dword [0x491a24]
sar eax, 4
mov ecx, dword [0x4914ec]
shl ecx, 0xa
xor eax, ecx
mov dx, word [0x491fc6]
movsx ecx, dx
imul ecx, ecx, 0xc03193a8
xor ecx, 0x4c28b671
cmp eax, ecx
jg 0x43a74c
mov eax, dword [0x4917e8]
add eax, 0x43932506
mov dword [0x4917e8], eax
jmp 0x43a778
mov eax, 0x23ac4000
mov ecx, dword [0x4915c4]
shl ecx, 9
sub ecx, 0xe131ad85
and ecx, 0xec1bf554
cmp eax, ecx
jl 0x43a773
jmp 0x43a773
jmp 0x43a778
jmp 0x43a7b0
mov eax, 0xbb404cf5
mov ecx, dword [0x4914ac]
shl ecx, 7
cmp eax, ecx
jne 0x43a7ab
mov ax, word [0x492400]
mov cx, ax
imul ecx, ecx, 0xc81b2edd
mov ax, cx
mov word [0x492400], ax
jmp 0x43a7b0
mov eax, dword [esp + 0x21c]
mov cl, byte [esp + eax + 0x9ca]
mov edx, dword [esp + 0x220]
sub eax, edx
mov byte [esp + eax + 0x6ae], cl
mov eax, dword [0x491a08]
sar eax, 2
mov edx, dword [0x491a7c]
add eax, edx
mov edx, dword [0x4917b4]
xor edx, eax
mov dword [0x4917b4], edx
mov eax, dword [esp + 0x21c]
add eax, 1
mov dword [esp + 0x21c], eax
jmp 0x43a6c8
mov eax, 0x34872121
mov cx, word [0x4922b6]
movsx edx, cx
mov esi, dword [0x491a90]
inc esi
mov dword [0x491a90], esi
add edx, esi
cmp eax, edx
jl 0x43a855
mov eax, dword [0x491720]
sar eax, 1
mov ecx, dword [0x4916f4]
mov edx, ecx
inc edx
mov dword [0x4916f4], edx
mov edx, 0x8a5e6c82
sub edx, ecx
and eax, edx
mov ecx, dword [0x4918e8]
and ecx, eax
mov dword [0x4918e8], ecx
jmp 0x43a899
mov eax, dword [0x491930]
mov ecx, eax
inc ecx
mov dword [0x491930], ecx
mov ecx, dword [0x491b1c]
and eax, ecx
xor eax, 0xece3f645
mov ecx, dword [0x49155c]
or ecx, eax
mov dword [0x49155c], ecx
mov eax, dword [esp + 0x220]
add eax, 1
mov dword [esp + 0x220], eax
jmp 0x43a62b
lea eax, [esp + 0x6ae]
mov ecx, dword [0x491d2c]
inc ecx
mov dword [0x491d2c], ecx
mov edx, dword [0x4916e0]
imul edx, ecx
mov dword [0x4916e0], edx
mov ecx, esp
mov dword [ecx], eax
call fcn.00452220
mov ecx, dword [esp + 0xacc]
mov edx, esp
mov dword [edx], ecx
mov dword [esp + 0x120], eax
call fcn.00452220
mov ecx, dword [esp + 0x120]
add ecx, eax
cmp ecx, 0x1ff
jbe 0x43a90e
mov eax, dword [0x491d90]
xor eax, 0xd6fc4a0f
mov ecx, dword [0x491ec4]
sub ecx, eax
mov dword [0x491ec4], ecx
jmp 0x43c72d
mov ax, word [0x4923ca]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x4923ca], ax
movsx ecx, ax
xor ecx, 0x9015ee05
cmp ecx, 0x50fcfced
jge 0x43a954
mov eax, dword [0x49166c]
not eax
mov cx, word [0x492064]
mov dx, cx
imul edx, eax
mov cx, dx
mov word [0x492064], cx
mov eax, dword [esp + 0xacc]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x6ae]
mov dword [ecx], eax
call fcn.00455380
mov ecx, dword [0x491d04]
mov edx, dword [0x491900]
sub ecx, edx
mov edx, dword [0x4917b8]
and edx, ecx
mov dword [0x4917b8], edx
mov dword [esp + 0x21c], 0
mov ecx, dword [0x491b58]
imul ecx, ecx, 0xfdfceff7
mov dword [0x491b58], ecx
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0xf89
mov dword [esp + 0x11c], eax
call fcn.004066f0
mov dword [esp + 0xac0], eax
mov eax, dword [0x491c6c]
and eax, 0x9eef59c8
mov dword [0x491c6c], eax
mov eax, dword [esp + 0xac0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x67c]
call fcn.0044c400
sub esp, 4
mov si, word [0x492332]
movsx ecx, si
or ecx, 0x5759d8be
mov edx, dword [0x491b18]
add edx, ecx
mov dword [0x491b18], edx
mov ecx, dword [esp + 0xac0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 5
mov dword [esp + 0x118], eax
call fcn.004260a0
mov eax, dword [0x491b34]
inc eax
mov dword [0x491b34], eax
xor eax, 0x29b34e60
mov ecx, dword [0x491b7c]
sub ecx, eax
mov dword [0x491b7c], ecx
mov eax, dword [esp + 0xad0]
mov ecx, eax
call fcn.004500b0
cmp eax, 0
je 0x43ad02
mov eax, dword [0x491cc0]
xor eax, 0xbffe7bed
mov dword [0x491cc0], eax
mov eax, esp
mov dword [eax + 4], 0xc
mov dword [eax], 0x4292
call fcn.004066f0
mov dword [esp + 0xabc], eax
mov cx, word [0x49233a]
mov ax, cx
xor eax, 0x8d8e
mov cx, word [0x4921e6]
mov dx, cx
or edx, eax
mov cx, dx
mov word [0x4921e6], cx
mov ecx, dword [esp + 0xad0]
mov eax, dword [esp + 0xabc]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x1e8]
mov dword [esp + 0x114], ecx
mov ecx, eax
mov dword [esp + 0x110], eax
call fcn.00448320
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x110]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x114]
mov dword [esp + 0x10c], eax
call fcn.004346e0
sub esp, 8
mov dword [esp + 0x220], eax
mov ecx, dword [esp + 0x110]
call fcn.00426ce0
mov eax, dword [0x491df0]
mov ecx, eax
inc ecx
mov dword [0x491df0], ecx
or eax, 0xc0352d8c
cmp eax, 0xf6fdbebd
jg 0x43ab46
mov dword [0x491f00], 0xb8839e69
mov eax, dword [esp + 0xabc]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xc
call fcn.004260a0
mov eax, dword [0x491700]
inc eax
mov dword [0x491700], eax
xor eax, 0x80c109
or eax, 0xa05b26e4
mov ecx, dword [0x4915c0]
add ecx, eax
mov dword [0x4915c0], ecx
cmp dword [esp + 0x220], 0
jne 0x43acea
mov ax, word [0x492006]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x492006], dx
movsx ecx, ax
imul ecx, ecx, 0xef2fb20f
mov esi, dword [0x491ddc]
inc esi
mov dword [0x491ddc], esi
and ecx, esi
mov esi, dword [0x491e48]
xor esi, ecx
mov dword [0x491e48], esi
mov dword [esp + 0x21c], 1
mov ecx, dword [0x491c1c]
or ecx, 0xafbf5afb
mov dword [0x491c1c], ecx
mov ecx, dword [esp + 0xad0]
mov esi, esp
mov dword [esi], 0
mov dword [esp + 0x108], ecx
call fcn.00444610
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0xb
mov ecx, dword [esp + 0x108]
call fcn.00427af0
sub esp, 8
mov dx, word [0x49216c]
mov cx, dx
xor ecx, 0x384b
mov dx, cx
mov word [0x49216c], dx
mov ecx, esp
mov dword [ecx + 4], 6
mov dword [ecx], 0x49da
mov dword [esp + 0x104], eax
call fcn.004066f0
mov dword [esp + 0xab8], eax
mov eax, dword [0x4916a0]
add eax, 0x890fd0c0
mov dword [0x4916a0], eax
mov eax, dword [esp + 0xab8]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x67c]
call fcn.0044c400
sub esp, 4
mov ecx, dword [0x491b4c]
sar ecx, 8
imul ecx, ecx, 0xdcb7f56f
mov esi, dword [0x491818]
shl esi, 9
imul esi, esi, 0x859306ff
or esi, 0xddfb9fa9
cmp ecx, esi
mov dword [esp + 0x100], eax
jg 0x43acc4
mov eax, dword [0x4917b4]
and eax, 0xb89e8261
mov dword [0x4917b4], eax
mov eax, dword [esp + 0xab8]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 6
call fcn.004260a0
mov eax, dword [0x491e08]
and eax, 0x59f3eb52
mov dword [0x4916a8], eax
mov eax, dword [0x491cf8]
add eax, 0xc0be43de
mov ecx, dword [0x491b9c]
xor ecx, eax
mov dword [0x491b9c], ecx
mov eax, dword [0x491ab8]
cmp eax, 0xac2c5ff7
jge 0x43ad33
mov eax, dword [0x491e30]
imul eax, eax, 0x1774ac8f
mov cx, word [0x491f34]
mov dx, cx
or edx, eax
mov cx, dx
mov word [0x491f34], cx
mov eax, 0x364d4fe5
mov ecx, esp
lea edx, [esp + 0x6ae]
mov dword [ecx], edx
lea ecx, [esp + 0x1d4]
mov dword [esp + 0xfc], ecx
mov dword [esp + 0xf8], eax
call fcn.00443c70
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xfc]
mov dword [ecx], edx
lea ecx, [esp + 0x67c]
mov dword [esp + 0xf4], eax
call fcn.0042c410
sub esp, 4
mov ecx, dword [esp + 0xfc]
mov dword [esp + 0xf0], eax
call fcn.00417c50
mov si, word [0x4923fa]
mov ax, si
dec eax
mov si, ax
mov word [0x4923fa], si
movsx eax, si
sub eax, 0x98640f12
mov ecx, dword [esp + 0xf8]
cmp ecx, eax
jge 0x43ae19
mov ax, word [0x492422]
movsx ecx, ax
mov edx, dword [0x491a5c]
dec edx
mov dword [0x491a5c], edx
and edx, 0xd3ff91b6
cmp ecx, edx
je 0x43ae05
mov eax, 0xbb39183f
mov cx, word [0x491fb6]
movsx edx, cx
cmp eax, edx
jne 0x43ae00
jmp 0x43ae00
jmp 0x43ae14
mov eax, dword [0x4919b8]
add eax, 0xc00ecb05
mov dword [0x4919b8], eax
jmp 0x43ae19
mov eax, esp
mov dword [eax + 4], 0x32
mov dword [eax], 0x1600
call fcn.004066f0
mov dword [esp + 0xab4], eax
mov cx, word [0x492352]
mov ax, cx
or eax, 0x859d
mov cx, ax
mov word [0x492352], cx
mov eax, dword [esp + 0xab4]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x1c0]
mov ecx, eax
mov dword [esp + 0xec], eax
call fcn.00443c70
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xec]
mov dword [ecx], edx
lea ecx, [esp + 0x67c]
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xe4], eax
call fcn.0042c410
sub esp, 4
mov ecx, dword [esp + 0xec]
mov dword [esp + 0xe0], eax
call fcn.00417c50
mov eax, dword [0x491de8]
add eax, 0x7d48546c
mov dword [0x491de8], eax
mov eax, dword [esp + 0xab4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x32
call fcn.004260a0
mov eax, dword [0x491a3c]
inc eax
mov dword [0x491a3c], eax
and eax, 0x937b9fe5
mov ecx, dword [0x491cdc]
or ecx, eax
mov dword [0x491cdc], ecx
mov eax, esp
lea ecx, [esp + 0x8fc]
mov dword [eax], ecx
lea eax, [esp + 0x1ac]
mov ecx, eax
mov dword [esp + 0xdc], eax
call fcn.00443c70
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xdc]
mov dword [ecx], edx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0xd8], eax
call fcn.0042c410
sub esp, 4
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0xd4], eax
call fcn.00417c50
mov eax, dword [0x49182c]
and eax, 0xab00cb36
mov dword [0x49182c], eax
cmp dword [esp + 0x21c], 0
je 0x43b192
mov eax, 0xcb0ba3fa
mov ecx, dword [0x491f24]
shl ecx, 3
add ecx, 0x1e412a9a
cmp eax, ecx
jne 0x43af89
mov dword [0x491b78], 0x105000a9
mov eax, esp
mov dword [eax + 4], 0x44
mov dword [eax], 0x691
call fcn.004066f0
mov dword [esp + 0xab0], eax
mov eax, dword [0x491dec]
add eax, 0x441be8d5
mov dword [0x491dec], eax
mov eax, dword [esp + 0xab0]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x198]
mov ecx, eax
mov dword [esp + 0xd0], eax
call fcn.00443c70
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xd0]
mov dword [ecx], edx
lea ecx, [esp + 0x67c]
mov dword [esp + 0xcc], eax
call fcn.0042c410
sub esp, 4
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0xc8], eax
call fcn.00417c50
mov eax, dword [0x4916b8]
imul eax, eax, 0xcdf00d3f
cmp eax, 0x6937823
jg 0x43b038
mov eax, dword [0x491708]
or eax, 0x922820a
mov ecx, dword [0x491e14]
add ecx, eax
mov dword [0x491e14], ecx
mov eax, esp
mov dword [eax + 4], 3
mov dword [eax], 0x4920
call fcn.004066f0
mov dword [esp + 0xaac], eax
mov eax, dword [0x491d5c]
mov ecx, eax
inc ecx
mov dword [0x491d5c], ecx
mov ecx, dword [0x49187c]
lea eax, [eax + ecx + 0x560db045]
mov dword [0x49187c], eax
mov eax, dword [esp + 0xab0]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x44
call fcn.004260a0
mov eax, dword [0x491c6c]
add eax, 0x32ccfa61
mov dword [0x491c6c], eax
mov ecx, dword [esp + 0xad0]
call fcn.004500b0
mov ecx, dword [esp + 0xaac]
mov edx, esp
mov dword [edx + 8], eax
mov dword [edx + 4], ecx
lea eax, [esp + 0x22e]
mov dword [edx], eax
mov dword [esp + 0xc4], eax
call fcn.00455947
mov ecx, dword [0x491684]
sar ecx, 5
xor ecx, 0x8295008c
or ecx, 0x2d42ef41
mov edx, dword [0x491d9c]
sub edx, ecx
mov dword [0x491d9c], edx
mov ecx, dword [esp + 0xaac]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 3
mov dword [esp + 0xc0], eax
call fcn.004260a0
mov si, word [0x4923e4]
mov ax, si
add eax, 0x62af121c
mov si, ax
mov word [0x4923e4], si
mov eax, esp
mov ecx, dword [esp + 0xc4]
mov dword [eax], ecx
lea eax, [esp + 0x184]
mov ecx, eax
mov dword [esp + 0xbc], eax
call fcn.00443c70
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xbc]
mov dword [ecx], edx
lea ecx, [esp + 0x67c]
mov dword [esp + 0xb8], eax
call fcn.0042c410
sub esp, 4
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0xb4], eax
call fcn.00417c50
mov eax, dword [0x491cec]
mov ecx, eax
dec ecx
mov dword [0x491cec], ecx
or eax, 0x57e1087
mov dword [0x491830], eax
mov eax, dword [0x491b70]
add eax, 0x5ba93fa
mov dword [0x491b70], eax
mov eax, esp
mov dword [eax + 4], 5
mov dword [eax], 0x4873
call fcn.004066f0
mov dword [esp + 0xaa8], eax
mov eax, dword [0x491538]
dec eax
mov dword [0x491538], eax
imul eax, eax, 0xda07119f
mov ecx, dword [0x491dd8]
and ecx, 0x768a7d31
cmp eax, ecx
jle 0x43b206
mov eax, dword [0x4915e8]
mov cx, word [0x4923ae]
movsx edx, cx
imul eax, edx
mov edx, 0xdcc2a649
sub edx, eax
mov eax, dword [0x49181c]
or eax, edx
mov dword [0x49181c], eax
mov eax, dword [esp + 0xaa8]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x170]
mov ecx, eax
mov dword [esp + 0xb0], eax
call fcn.00443c70
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xb0]
mov dword [ecx], edx
lea ecx, [esp + 0x67c]
mov dword [esp + 0xac], eax
call fcn.0042c410
sub esp, 4
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xa8], eax
call fcn.00417c50
mov si, word [0x492182]
mov ax, si
or eax, 0xad8e
mov si, ax
mov word [0x492182], si
mov eax, dword [esp + 0xaa8]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.004260a0
mov eax, dword [0x4917dc]
mov ecx, eax
inc ecx
mov dword [0x4917dc], ecx
mov ecx, 0x661741b6
sub ecx, eax
xor ecx, 0xf50dbec9
mov eax, dword [0x4918ec]
imul eax, ecx
mov dword [0x4918ec], eax
cmp dword [esp + 0x21c], 0
je 0x43b325
mov eax, 0xf7d9ffee
mov cx, word [0x4920e6]
movsx edx, cx
cmp eax, edx
jne 0x43b2f2
mov ax, word [0x4920e6]
mov cx, ax
and ecx, 0x3440
mov ax, cx
mov word [0x4920e6], ax
mov eax, dword [esp + 0xad0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x67c]
call fcn.0042c410
sub esp, 4
mov ecx, dword [0x491bd8]
xor ecx, 0x11c008b1
mov dword [0x491bd8], ecx
mov dword [esp + 0xa4], eax
mov eax, dword [0x4919f4]
mov ecx, dword [0x491d8c]
and ecx, eax
mov dword [0x491d8c], ecx
mov eax, dword [0x4912ac]
mov ecx, esp
lea edx, [esp + 0x8fc]
mov dword [ecx], edx
call eax
sub esp, 4
mov dword [esp + 0x228], eax
mov dword [0x49194c], 0x104dd8cd
cmp dword [esp + 0x228], 0
jne 0x43b37b
mov eax, dword [0x491504]
mov dword [0x491d5c], eax
jmp 0x43c72d
mov eax, 0xfffedd7f
mov ecx, dword [0x491918]
inc ecx
mov dword [0x491918], ecx
and ecx, 0xffc86bb9
mov edx, dword [0x491604]
mov esi, edx
dec esi
mov dword [0x491604], esi
or ecx, edx
cmp eax, ecx
jle 0x43b3bb
mov eax, dword [0x491c28]
xor eax, 0x151e7716
mov dword [0x491c28], eax
xorps xmm0, xmm0
movaps xmmword [esp + 0x690], xmm0
mov eax, dword [0x4915c4]
and eax, 0xbbf36684
mov dword [0x4915c4], eax
mov word [esp + 0x690], 2
mov cx, word [0x4922be]
mov ax, cx
add eax, 0x30012216
mov cx, ax
mov word [0x4922be], cx
mov eax, dword [0x4912b4]
mov edx, dword [0x4912b8]
mov esi, dword [esp + 0x228]
mov esi, dword [esi + 0xc]
mov esi, dword [esi]
mov esi, dword [esi]
mov dword [esp + 0x16c], esi
mov esi, dword [esp + 0x16c]
mov edi, esp
mov dword [edi], esi
mov dword [esp + 0xa0], eax
call edx
sub esp, 4
mov edx, esp
mov dword [edx], eax
mov eax, dword [esp + 0xa0]
call eax
sub esp, 4
mov dword [esp + 0x694], eax
mov eax, dword [0x491614]
mov edx, dword [0x4917bc]
sub edx, eax
mov dword [0x4917bc], edx
mov eax, dword [0x4912b0]
movzx edx, word [esp + 0x200]
mov esi, esp
mov dword [esi], edx
call eax
sub esp, 4
mov word [esp + 0x692], ax
mov edx, dword [0x491938]
mov esi, edx
inc esi
mov dword [0x491938], esi
mov esi, 0x721c309a
sub esi, edx
mov edx, dword [0x491638]
xor edx, 0xffffffff
imul edx, edx, 0xd7bc66de
cmp esi, edx
jle 0x43b4bc
mov ax, word [0x49229c]
mov cx, ax
or ecx, 0x5e36
mov ax, cx
mov word [0x49229c], ax
cmp dword [esp + 0xad4], 0
je 0x43b698
mov eax, dword [0x4917b0]
and eax, 0xa2211ef5
mov dword [0x4917b0], eax
mov eax, dword [esp + 0xad4]
mov ecx, 0x10624dd3
mul ecx
shr edx, 6
mov eax, esp
mov dword [eax + 4], edx
lea ecx, [esp + 0x690]
mov dword [eax], ecx
call fcn.0044f870
mov dword [esp + 0x6a8], eax
mov si, word [0x491f3e]
movsx eax, si
mov dword [0x491644], eax
cmp dword [esp + 0x6a8], 0
jge 0x43b544
mov eax, dword [0x491cb0]
dec eax
mov dword [0x491cb0], eax
or eax, 0x97af0271
mov ecx, dword [0x491db0]
add ecx, eax
mov dword [0x491db0], ecx
jmp 0x43c72d
mov ax, word [0x49218e]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x49218e], ax
movsx ecx, ax
mov edx, dword [0x491720]
mov esi, edx
dec esi
mov dword [0x491720], esi
sub ecx, edx
xor ecx, 0xe5247157
cmp ecx, 0x7ed3f7d7
je 0x43b58c
mov eax, dword [0x49190c]
and eax, 0xdd1fbd5d
mov dword [0x49190c], eax
mov eax, 0xd480150c
mov ecx, dword [0x4912cc]
mov edx, dword [esp + 0x6a8]
mov esi, esp
lea edi, [esp + 0xad4]
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 + 0x9c], eax
call ecx
sub esp, 0x14
mov ecx, dword [0x49185c]
mov edx, dword [esp + 0x9c]
cmp edx, ecx
mov dword [esp + 0x98], eax
jge 0x43b5fd
mov eax, dword [0x491dac]
and eax, 0x55f4a0d4
mov dword [0x491dac], eax
jmp 0x43b634
mov eax, 0x5051f32e
mov cx, word [0x4923e4]
movsx edx, cx
imul edx, edx, 0x709de6ba
and edx, 0xa72e6877
cmp eax, edx
jg 0x43b62f
mov eax, dword [0x491a1c]
or eax, 0x323853eb
mov dword [0x491a1c], eax
jmp 0x43b634
mov eax, dword [0x4912cc]
mov ecx, dword [esp + 0x6a8]
mov edx, esp
lea esi, [esp + 0xad4]
mov dword [edx + 0xc], esi
mov dword [edx], ecx
mov dword [edx + 0x10], 4
mov dword [edx + 8], 0x1005
mov dword [edx + 4], 0xffff
call eax
sub esp, 0x14
mov di, word [0x492454]
movsx ecx, di
imul ecx, ecx, 0x8d74e99f
add ecx, 0x87600e25
mov edx, dword [0x491814]
xor edx, ecx
mov dword [0x491814], edx
mov dword [esp + 0x94], eax
jmp 0x43b7af
mov word [0x491fb0], 0x503
mov eax, dword [0x4912d0]
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 + 0x6a8], eax
mov eax, dword [0x491610]
add eax, 0x673b15b0
mov dword [0x491610], eax
cmp dword [esp + 0x6a8], 0xffffffff
jne 0x43b702
mov ax, word [0x4922e6]
mov cx, ax
and ecx, 0x8952
mov ax, cx
mov word [0x4922e6], ax
jmp 0x43c72d
mov eax, 0xc5dc0666
mov cx, word [0x492010]
mov dx, cx
inc edx
mov cx, dx
mov word [0x492010], cx
movsx edx, cx
cmp eax, edx
jl 0x43b73c
mov eax, dword [0x491764]
imul eax, eax, 0x85e7df22
mov dword [0x491764], eax
jmp 0x43b75e
mov eax, dword [0x4919e4]
inc eax
mov dword [0x4919e4], eax
mov ecx, dword [0x491998]
xor eax, ecx
mov ecx, dword [0x4917f0]
imul ecx, eax
mov dword [0x4917f0], ecx
lea eax, [esp + 0x690]
mov ecx, dword [0x4912a8]
mov edx, dword [esp + 0x6a8]
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 0x43b7a6
mov eax, dword [0x491688]
mov ecx, dword [0x49172c]
add ecx, eax
mov dword [0x49172c], ecx
jmp 0x43c646
mov word [0x4920d0], 0xf668
lea eax, [esp + 0x67c]
mov ecx, dword [0x4918dc]
or ecx, 0x8656cb20
mov dword [0x4918dc], ecx
mov ecx, dword [0x4912c8]
lea edx, [esp + 0x67c]
mov dword [esp + 0x90], ecx
mov ecx, edx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], edx
call fcn.004500b0
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x84], eax
call fcn.0044bd10
mov ecx, dword [esp + 0x6a8]
mov edx, esp
mov esi, dword [esp + 0x84]
mov dword [edx + 8], esi
mov dword [edx + 4], eax
mov dword [edx], ecx
mov dword [edx + 0xc], 0
mov eax, dword [esp + 0x90]
call eax
sub esp, 0x10
mov dword [esp + 0x6a4], eax
mov dword [0x4915b0], 0xff52bac8
mov eax, dword [esp + 0x6a4]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x80], eax
call fcn.004500b0
mov ecx, dword [esp + 0x80]
cmp ecx, eax
jae 0x43b896
mov eax, dword [0x491588]
cmp eax, 0x5ab5a4fd
jge 0x43b891
mov ax, word [0x492054]
mov cx, ax
and ecx, 0x2127
mov ax, cx
mov word [0x492054], ax
jmp 0x43c646
mov eax, 0x1dc2b9b6
mov ecx, dword [0x491c7c]
sar ecx, 3
mov dword [0x491828], ecx
mov ecx, dword [esp + 0xad0]
mov dword [esp + 0x7c], eax
call fcn.0040b250
mov eax, dword [0x491b18]
mov ecx, dword [esp + 0x7c]
cmp ecx, eax
jg 0x43b8f4
mov ax, word [0x49216c]
mov cx, ax
mov ax, word [0x491fac]
mov dx, ax
imul ecx, edx
imul ecx, ecx, 0x14f1776
mov ax, cx
mov word [0x491fac], ax
jmp 0x43b92b
mov eax, dword [0x49162c]
shl eax, 3
mov ecx, dword [0x491888]
sar ecx, 6
xor eax, ecx
or eax, 0x87f6908a
cmp eax, 0xd3d3faca
jge 0x43b926
mov eax, dword [0x491ee0]
or eax, 0x1eb3aa43
mov dword [0x491ee0], eax
jmp 0x43b92b
jmp 0x43b930
mov ax, word [0x492408]
movsx ecx, ax
not ecx
mov ax, word [0x492346]
mov dx, ax
dec edx
mov si, dx
mov word [0x492346], si
movsx edx, ax
lea ecx, [ecx + edx - 0x5d22eae6]
mov edx, dword [0x491610]
mov edi, edx
inc edi
mov dword [0x491610], edi
or edx, 0x66b88513
mov edi, dword [0x491710]
or edx, edi
cmp ecx, edx
jl 0x43b996
mov ax, word [0x49231c]
mov cx, ax
xor ecx, 0xb8f4
mov ax, cx
mov word [0x49231c], ax
mov eax, 0x67c6ee98
mov ecx, dword [0x4912c0]
mov edx, dword [esp + 0x6a8]
mov esi, esp
lea edi, [esp + 0x22e]
mov dword [esi + 4], edi
mov dword [esi], edx
mov dword [esi + 0xc], 0
mov dword [esi + 8], 0x400
mov dword [esp + 0x78], eax
call ecx
sub esp, 0x10
mov dword [esp + 0x6a4], eax
mov eax, dword [0x4915f0]
sar eax, 6
mov ecx, dword [esp + 0x78]
cmp ecx, eax
jg 0x43ba1b
mov eax, 0x99e90a50
mov ecx, dword [0x4918d8]
sar ecx, 0xa
cmp eax, ecx
jge 0x43ba16
mov ax, word [0x491fda]
mov cx, ax
imul ecx, ecx, 0x9fffff98
mov ax, cx
mov word [0x491fda], ax
jmp 0x43ba1b
cmp dword [esp + 0x6a4], 0
jle 0x43ba4c
mov eax, dword [esp + 0x210]
mov ecx, dword [esp + 0x214]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], eax
call fcn.0044f420
cmp eax, 0
je 0x43ba5b
mov dword [0x491d00], 0x69a3982a
jmp 0x43c42a
mov eax, dword [0x491740]
add eax, 0xc6958683
mov ecx, dword [0x491b9c]
add ecx, 0x70370996
add ecx, 0x2f7a7542
cmp eax, ecx
jg 0x43ba8f
mov eax, dword [0x4916c4]
imul eax, eax, 0xfffffbe6
mov dword [0x4916c4], eax
mov eax, 0xdb85cdeb
mov ecx, dword [esp + 0xad0]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x70], eax
call fcn.004500b0
mov ecx, dword [esp + 0x6a4]
add eax, ecx
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x74]
call fcn.0041fb00
sub esp, 8
mov eax, dword [0x491a7c]
mov ecx, eax
inc ecx
mov dword [0x491a7c], ecx
mov ecx, dword [esp + 0x70]
cmp ecx, eax
jl 0x43bb2f
mov ax, word [0x492178]
movsx ecx, ax
mov edx, dword [0x491d40]
not edx
imul edx, edx, 0x7247a5af
mov ax, word [0x491fb0]
movsx esi, ax
and edx, esi
cmp ecx, edx
jl 0x43bb20
mov eax, dword [0x491ce4]
add eax, 0xed7bf8d8
mov dword [0x491ce4], eax
jmp 0x43bb2a
mov dword [0x4916bc], 0x655e3020
jmp 0x43bb2f
mov eax, dword [esp + 0xad0]
mov ecx, eax
call fcn.00430600
cmp eax, 0
jne 0x43bb9b
mov eax, 0x2a002f6c
mov cx, word [0x49204a]
movsx edx, cx
mov esi, dword [0x491a6c]
xor esi, 0xffffffff
imul edx, esi
cmp eax, edx
jle 0x43bb96
mov ax, word [0x492090]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x492090], ax
and ecx, 0x7034
mov ax, word [0x491fba]
mov dx, ax
xor edx, ecx
mov ax, dx
mov word [0x491fba], ax
jmp 0x43c42a
mov eax, dword [0x491c98]
add eax, 0x21244200
mov dword [0x491c98], eax
mov ecx, dword [esp + 0xad0]
mov eax, dword [esp + 0x6a4]
mov edx, esp
mov dword [edx + 4], eax
lea eax, [esp + 0x22e]
mov dword [edx], eax
call fcn.004391e0
sub esp, 8
mov ecx, dword [0x491bd0]
inc ecx
mov dword [0x491bd0], ecx
mov si, word [0x492214]
mov dx, si
and edx, ecx
mov si, dx
mov word [0x492214], si
cmp dword [esp + 0x208], 0
mov dword [esp + 0x6c], eax
jge 0x43bef6
mov eax, dword [0x491cdc]
add eax, 0x472c67e7
mov dword [0x491cdc], eax
mov eax, esp
mov dword [eax + 4], 5
mov dword [eax], 0x4873
call fcn.004066f0
mov dword [esp + 0xaa4], eax
mov eax, dword [0x4916b0]
mov ecx, dword [0x491e20]
xor ecx, eax
mov dword [0x491e20], ecx
mov ecx, dword [esp + 0xad0]
mov eax, dword [esp + 0xaa4]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x158]
mov dword [esp + 0x68], ecx
mov ecx, eax
mov dword [esp + 0x64], eax
call fcn.00448320
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x64]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x60], eax
call fcn.004346e0
sub esp, 8
mov dword [esp + 0x208], eax
mov ecx, dword [esp + 0x64]
call fcn.00426ce0
mov eax, dword [0x491acc]
imul eax, eax, 0xdd89999a
mov dword [0x491acc], eax
mov eax, dword [esp + 0xaa4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 5
call fcn.004260a0
mov eax, dword [0x491670]
imul eax, eax, 0x31ae788b
mov dword [0x491670], eax
cmp dword [esp + 0x208], 0
jl 0x43beb5
mov eax, dword [0x491dbc]
imul eax, eax, 0x23aa9a0f
mov dword [0x491dbc], eax
mov eax, dword [esp + 0x208]
add eax, 4
mov dword [esp + 0x208], eax
mov eax, dword [0x4914c8]
imul eax, eax, 0x98b41dd3
mov dword [0x4914c8], eax
mov eax, dword [esp + 0xad0]
mov ecx, esp
mov dword [ecx], eax
call fcn.0040cfb0
mov dword [esp + 0x204], eax
mov dword [0x491ad4], 0x91408a03
cmp dword [esp + 0x204], 0
jge 0x43bea6
mov eax, 0x6adffdf6
mov ecx, dword [0x491b38]
or ecx, 0xd21779eb
mov dword [0x491b38], ecx
mov ecx, esp
mov dword [ecx + 4], 0xb
mov dword [ecx], 0x417f
mov dword [esp + 0x5c], eax
call fcn.004066f0
mov dword [esp + 0xaa0], eax
mov dx, word [0x49211c]
movsx eax, dx
or eax, 0x73ede78f
mov ecx, dword [esp + 0x5c]
cmp ecx, eax
jne 0x43bd9f
mov eax, dword [0x491ea4]
and eax, 0xbe8efff9
mov dword [0x491ea4], eax
mov eax, 0xcf3f6ce2
mov ecx, dword [esp + 0xad0]
mov edx, dword [esp + 0xaa0]
mov esi, esp
mov dword [esi], edx
lea edx, [esp + 0x144]
mov dword [esp + 0x58], ecx
mov ecx, edx
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], edx
call fcn.00448320
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x4c], eax
call fcn.004346e0
sub esp, 8
mov dword [esp + 0x6a4], eax
mov ecx, dword [esp + 0x50]
call fcn.00426ce0
mov eax, dword [0x491500]
mov ecx, dword [0x491854]
and ecx, eax
mov dword [0x491854], ecx
mov eax, dword [esp + 0xaa0]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xb
call fcn.004260a0
mov di, word [0x492412]
mov ax, di
dec eax
mov di, ax
mov word [0x492412], di
movsx eax, di
mov ecx, dword [esp + 0x54]
sub ecx, eax
xor ecx, 0xa16be9ed
cmp ecx, 0x8ffa9dfb
jge 0x43be6c
mov eax, dword [0x491a34]
imul eax, eax, 0xaa87416b
mov dword [0x49155c], eax
cmp dword [esp + 0x6a4], 0
jl 0x43be8e
mov eax, dword [0x491ab0]
and eax, 0x20e72d83
mov dword [0x491ab0], eax
jmp 0x43c42a
mov ax, word [0x49217c]
mov cx, ax
or ecx, 0x59f9
mov ax, cx
mov word [0x49217c], ax
mov eax, dword [0x491ea4]
add eax, 0xf771a62b
mov dword [0x491ea4], eax
mov eax, 0x9cf27e9e
mov cx, word [0x492010]
movsx edx, cx
xor edx, 0xbf5324f1
xor edx, 0x54a50263
cmp eax, edx
jl 0x43bef1
mov eax, dword [0x491648]
dec eax
mov dword [0x491648], eax
mov ecx, dword [0x491c70]
xor ecx, eax
mov dword [0x491c70], ecx
jmp 0x43bef6
mov eax, dword [0x491d44]
xor eax, 0x5d96c7ba
mov dword [0x491d44], eax
cmp dword [esp + 0x204], 0
jl 0x43bf8e
mov eax, 0x8ee46f22
mov ecx, dword [0x4914f4]
cmp eax, ecx
jl 0x43bf36
mov eax, dword [0x4918b0]
imul eax, eax, 0x13f8be5
mov dword [0x4918b0], eax
mov eax, dword [esp + 0xad0]
mov ecx, eax
call fcn.004500b0
sub eax, dword [esp + 0x208]
cmp eax, dword [esp + 0x204]
jb 0x43bf6c
mov eax, dword [0x4917b0]
and eax, 0xdb4436ab
mov dword [0x4917b0], eax
jmp 0x43c42a
mov eax, dword [0x491d9c]
mov cx, word [0x4923ec]
mov dx, cx
imul eax, edx
imul eax, eax, 0xc0d86b03
mov cx, ax
mov word [0x4923ec], cx
mov eax, dword [0x491df8]
imul eax, eax, 0xe1bdc46b
mov dword [0x491df8], eax
cmp dword [esp + 0xad8], 0
je 0x43c2cd
test byte [esp + 0x1ff], 1
jne 0x43c2cd
mov eax, dword [0x4915c0]
xor eax, 0x4e16e7e6
mov dword [0x4915c0], eax
mov eax, dword [esp + 0xad0]
mov ecx, eax
call fcn.004500b0
cmp eax, 0x4000
jbe 0x43c241
mov eax, 0xb2f15a0e
mov ecx, dword [0x4916e0]
sub ecx, 0x404500f
cmp eax, ecx
jl 0x43c013
mov eax, dword [0x491dcc]
and eax, 0x73fc5b43
mov ecx, dword [0x4914d8]
sub ecx, eax
mov dword [0x4914d8], ecx
mov byte [esp + 0x1ff], 1
mov eax, dword [0x49179c]
mov ecx, eax
dec ecx
mov dword [0x49179c], ecx
add eax, 0xb0cb81e5
mov dword [0x491974], eax
mov eax, dword [esp + 0xad0]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x130]
call fcn.0042e6b0
sub esp, 4
mov dx, word [0x492478]
mov cx, dx
xor ecx, 0x794a
mov dx, cx
mov word [0x492478], dx
cmp dword [esp + 0x208], 0
mov dword [esp + 0x48], eax
jl 0x43c0f1
mov ax, word [0x492402]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x492402], dx
movsx ecx, ax
imul ecx, ecx, 0x90f48dd
mov esi, dword [0x491850]
or esi, ecx
mov dword [0x491850], esi
mov ecx, dword [esp + 0x208]
mov esi, esp
mov dword [esi], 0
lea esi, [esp + 0x130]
mov dword [esp + 0x44], ecx
mov ecx, esi
mov dword [esp + 0x40], esi
call fcn.00444610
sub esp, 4
mov ecx, esp
mov esi, dword [esp + 0x44]
mov dword [ecx + 4], esi
mov dword [ecx], eax
mov ecx, dword [esp + 0x40]
call fcn.00427af0
sub esp, 8
mov dword [0x4914ac], 0x3b3d76ff
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x130]
lea ecx, [esp + 0x8fc]
mov edx, dword [0x4918c8]
xor edx, 0xe53a
mov si, word [0x492116]
mov di, si
imul edi, edx
mov si, di
mov word [0x492116], si
mov edx, dword [esp + 0xad8]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0042b2b0
cmp eax, 0
jne 0x43c1e8
mov ax, word [0x492174]
mov cx, ax
and ecx, 0x442e
mov ax, cx
mov word [0x492174], ax
mov dword [esp + 0x208], 0xffffffff
mov ax, word [0x49241c]
mov cx, ax
or ecx, 0xb958
mov ax, cx
mov word [0x49241c], ax
mov ecx, dword [esp + 0xad0]
call fcn.0040b250
mov ecx, dword [0x4917a4]
mov edx, ecx
inc edx
mov dword [0x4917a4], edx
mov edx, 0xe95286c6
sub edx, ecx
mov ecx, dword [0x491ab0]
xor ecx, 0xffffffff
add ecx, 0xa16a66d0
xor ecx, 0x48a38a8f
cmp edx, ecx
je 0x43c1d8
mov eax, dword [0x49195c]
sar eax, 4
xor eax, 0xc8b2b077
mov ecx, dword [0x491d94]
imul ecx, eax
mov dword [0x491d94], ecx
mov dword [esp + 0x12c], 0xd
jmp 0x43c202
mov eax, dword [0x491860]
add eax, 0xb052fca3
mov dword [0x491860], eax
mov dword [esp + 0x12c], 0
lea ecx, [esp + 0x130]
call fcn.00417c50
mov ecx, dword [esp + 0x12c]
test ecx, ecx
mov dword [esp + 0x38], ecx
je 0x43c23c
jmp 0x43c226
mov eax, dword [esp + 0x38]
sub eax, 0xd
mov dword [esp + 0x34], eax
je 0x43c42a
jmp 0x43c807
jmp 0x43c241
mov eax, dword [0x491684]
dec eax
mov dword [0x491684], eax
mov ecx, dword [0x491a44]
xor ecx, 0x41086be4
cmp eax, ecx
jne 0x43c2c8
mov eax, 0x67ede8d3
mov ecx, dword [0x491ef0]
sub ecx, 0xc3e486cc
cmp eax, ecx
jl 0x43c28d
mov eax, dword [0x491a84]
xor eax, 0x73d01cdf
mov dword [0x491a84], eax
jmp 0x43c2c3
mov ax, word [0x4923d0]
movsx ecx, ax
add ecx, 0x2daf7d2f
or ecx, 0x53f5e5bd
mov edx, dword [0x491744]
xor edx, 0xffffffff
and edx, 0xba113934
cmp ecx, edx
je 0x43c2be
jmp 0x43c2be
jmp 0x43c2c3
jmp 0x43c2c8
jmp 0x43c2cd
mov eax, dword [0x491698]
or eax, 0x9ce9dfda
mov dword [0x491698], eax
cmp dword [esp + 0xad4], 0x3af7
jne 0x43c382
mov eax, dword [0x49162c]
xor eax, 0x9a876613
mov dword [0x49162c], eax
mov eax, dword [esp + 0xad0]
mov ecx, eax
call fcn.004500b0
cmp eax, 0x500000
jbe 0x43c363
mov eax, 0x88036fdc
mov cx, word [0x492242]
movsx edx, cx
mov esi, dword [0x49197c]
sub edx, esi
add edx, 0x23785789
cmp eax, edx
jge 0x43c34e
mov eax, dword [0x491ec4]
or eax, 0x994185bf
mov dword [0x491ec4], eax
jmp 0x43c35e
mov eax, dword [0x49172c]
imul eax, eax, 0x88192164
mov dword [0x49172c], eax
jmp 0x43c42a
mov eax, dword [0x491b3c]
mov ecx, 0xa8467b25
sub ecx, eax
mov eax, dword [0x491bf4]
and ecx, eax
and ecx, 0x9edc5dbd
mov dword [0x491bf4], ecx
mov eax, 0x97c8d8fc
mov ecx, dword [0x491c28]
mov edx, ecx
inc edx
mov dword [0x491c28], edx
and ecx, 0xc6dd12f0
cmp eax, ecx
jle 0x43c425
mov ax, word [0x49242c]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x49242c], ax
movsx ecx, ax
add ecx, 0xe2639204
and ecx, 0x5d0138f4
mov edx, dword [0x491c80]
mov esi, edx
dec esi
mov dword [0x491c80], esi
cmp ecx, edx
jne 0x43c408
mov eax, dword [0x491ca4]
dec eax
mov dword [0x491ca4], eax
and eax, 0x8582
mov cx, word [0x4923fa]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x4923fa], cx
jmp 0x43c420
mov ax, word [0x492238]
mov cx, ax
and ecx, 0x1940
mov ax, cx
mov word [0x492238], ax
jmp 0x43c425
jmp 0x43b930
mov eax, dword [0x491a60]
and eax, 0x16e8cc0d
mov dword [0x491a60], eax
cmp dword [esp + 0x208], 0
jl 0x43c4b2
mov ax, word [0x492078]
mov cx, ax
xor ecx, 0x86d1
mov ax, cx
mov word [0x492078], ax
mov ecx, dword [esp + 0xad0]
mov edx, dword [esp + 0x208]
mov esi, esp
mov dword [esi], 0
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edx
call fcn.00444610
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x2c]
mov dword [ecx + 4], edx
mov dword [ecx], eax
mov ecx, dword [esp + 0x30]
call fcn.00427af0
sub esp, 8
mov ecx, dword [0x4916b0]
add ecx, 0x30388440
mov dword [0x4916b0], ecx
mov dword [esp + 0x28], eax
mov ax, word [0x49218c]
mov cx, ax
and ecx, 0xb4d
mov ax, cx
mov word [0x49218c], ax
cmp dword [esp + 0xad8], 0
je 0x43c5ed
test byte [esp + 0x1ff], 1
jne 0x43c5ed
lea eax, [esp + 0x8fc]
mov ecx, dword [0x491c80]
imul ecx, ecx, 0xd939fc77
and ecx, 0x6eb6023
mov edx, dword [0x491a10]
or edx, ecx
mov dword [0x491a10], edx
mov ecx, dword [esp + 0xad8]
mov edx, dword [esp + 0xad0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0042b2b0
cmp eax, 0
jne 0x43c5cd
mov ax, word [0x4920ea]
mov cx, ax
imul ecx, ecx, 0xc66ddc96
mov ax, cx
mov word [0x4920ea], ax
mov ecx, dword [esp + 0xad0]
call fcn.0040b250
mov ecx, dword [0x491770]
and ecx, 0xd92a77fc
cmp ecx, 0xa381a497
je 0x43c5c8
mov eax, 0xd8537a70
mov cx, word [0x491fae]
mov dx, cx
inc edx
mov si, dx
mov word [0x491fae], si
movsx edx, cx
xor edx, 0x488db9dc
cmp eax, edx
jl 0x43c5c3
mov eax, 0x28c18931
mov ecx, dword [0x4914b8]
shl ecx, 8
mov edx, dword [0x491c6c]
and ecx, edx
cmp eax, ecx
jl 0x43c5be
jmp 0x43c5be
jmp 0x43c5c3
jmp 0x43c5c8
jmp 0x43c5cd
mov eax, dword [0x4919d8]
mov cx, word [0x492394]
mov dx, cx
lea eax, [eax + edx + 0x2ce92cb4]
mov cx, ax
mov word [0x492394], cx
mov eax, 0x368680f
mov cx, word [0x4921b4]
mov dx, cx
dec edx
mov cx, dx
mov word [0x4921b4], cx
movsx edx, cx
mov esi, dword [0x491810]
mov edi, esi
inc edi
mov dword [0x491810], edi
xor esi, 0x37d0619
or edx, esi
cmp eax, edx
je 0x43c641
mov eax, dword [0x4916a8]
add eax, 0x53bd0925
mov ecx, dword [0x491da8]
and ecx, eax
mov dword [0x491da8], ecx
jmp 0x43c646
mov eax, dword [0x4912d8]
mov ecx, dword [esp + 0x6a8]
mov edx, esp
mov dword [edx], ecx
mov dword [edx + 4], 2
call eax
sub esp, 8
mov ecx, dword [0x491790]
or ecx, 0x31f17cd2
mov edx, dword [0x491e8c]
shl edx, 9
and edx, 0x941c1000
cmp ecx, edx
mov dword [esp + 0x24], eax
jg 0x43c6bf
mov eax, 0xfc639a4c
mov ecx, dword [0x4917a4]
mov edx, ecx
inc edx
mov dword [0x4917a4], edx
add ecx, 0x7b5e81ca
cmp eax, ecx
jl 0x43c6ba
mov eax, dword [0x4915e4]
and eax, 0xc3f7d2f7
mov dword [0x4915e4], eax
jmp 0x43c702
mov ax, word [0x492170]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x492170], dx
movsx ecx, ax
imul ecx, ecx, 0x285eb94b
add ecx, 0x43b544ed
cmp ecx, 0x5abbc016
jle 0x43c6fd
mov eax, dword [0x4918b4]
add eax, 0x3fd1ec35
mov dword [0x4918b4], eax
jmp 0x43c702
mov eax, dword [0x4912a4]
mov ecx, dword [esp + 0x6a8]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov ecx, dword [0x491cd8]
or ecx, 0x7fbaf6f5
mov dword [0x491cd8], ecx
mov dword [esp + 0x20], eax
mov eax, 0xf04a0599
mov ecx, esp
lea edx, [esp + 0x8fc]
mov dword [ecx], edx
mov dword [ecx + 4], 0xce
mov dword [esp + 0x1c], eax
call fcn.004333b0
mov eax, dword [0x4917b0]
inc eax
mov dword [0x4917b0], eax
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
jge 0x43c76e
mov dword [0x491e38], 0x1b57d4e6
mov eax, esp
lea ecx, [esp + 0x9ca]
mov dword [eax], ecx
mov dword [eax + 4], 0xce
call fcn.004333b0
mov eax, dword [0x49180c]
inc eax
mov dword [0x49180c], eax
imul eax, eax, 0xd55d23a8
add eax, 0x7e601696
mov dx, ax
mov word [0x492228], dx
mov eax, esp
lea ecx, [esp + 0x6ae]
mov dword [eax], ecx
mov dword [eax + 4], 0x24e
call fcn.004333b0
mov eax, dword [0x491b94]
imul eax, eax, 0x1d0d9adc
mov dword [0x491b94], eax
mov eax, esp
lea ecx, [esp + 0x22e]
mov dword [eax], ecx
mov dword [eax + 4], 0x44e
call fcn.004333b0
mov eax, dword [0x491e0c]
imul eax, eax, 0x25347b1b
mov dword [0x491e0c], eax
lea ecx, [esp + 0x67c]
call fcn.00417c50
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
int3