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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x7c
mov eax, dword [esp + 0x90]
mov edx, dword [esp + 0x8c]
mov esi, 0xeeffefd5
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], edx
mov dword [esp + 0x70], ecx
mov eax, dword [0x49ae30]
sub eax, 0xdebd8647
cmp esi, eax
mov dword [esp + 0x50], ecx
jne 0x406d3a
mov eax, dword [0x49a164]
and eax, 0x11bd42ce
mov dword [0x49a164], eax
mov eax, 0x8aab6890
mov ecx, esp
mov dword [ecx + 4], 0x31e
mov dword [ecx], 0x2de
mov dword [esp + 0x4c], eax
call fcn.0043b390
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x34], eax
mov eax, dword [0x49bc64]
imul eax, eax, 0x3d9971f2
and eax, 0x357cb5a0
mov edx, dword [0x49a468]
add edx, eax
mov dword [0x49a468], edx
mov eax, esp
mov dword [eax + 4], 0xaf1
mov dword [eax], 0x300d
call fcn.0043b390
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x30], eax
mov eax, dword [0x49aaa4]
xor eax, 0x6f9c6dcc
mov dword [0x49aaa4], eax
mov eax, dword [0x495920]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov si, word [0x4a0300]
movsx eax, si
imul eax, eax, 0x27173800
mov dword [0x49717c], eax
mov eax, dword [esp + 0x50]
mov dword [eax + 0x18], 0
mov ecx, dword [0x49c55c]
xor ecx, 0xb6f20bb6
mov dword [0x49c55c], ecx
mov byte [eax + 0x1c], 0
mov ecx, dword [0x49c16c]
mov edx, ecx
dec edx
mov dword [0x49c16c], edx
imul ecx, ecx, 0xa76cd1f7
imul ecx, ecx, 0xaa31fe7a
mov edx, dword [esp + 0x4c]
cmp edx, ecx
jle 0x406e37
mov eax, dword [0x49a290]
mov ecx, dword [0x495b40]
lea eax, [eax + ecx*8]
xor eax, 0xf8d47b75
mov ecx, dword [0x49a98c]
and ecx, eax
mov dword [0x49a98c], ecx
jmp 0x406e72
mov eax, dword [0x49b408]
imul eax, eax, 0xaf25d552
sub eax, 0x7aa01421
cmp eax, 0xb9d6bedd
jg 0x406e6d
mov eax, dword [0x49663c]
shl eax, 8
and eax, 0x488c000
mov ecx, dword [0x496c6c]
add ecx, eax
mov dword [0x496c6c], ecx
jmp 0x406e72
mov eax, 0x34614a4b
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x28], 0
mov edx, dword [0x49b784]
mov esi, edx
dec esi
mov dword [0x49b784], esi
and edx, 0x93de3b0
and edx, 0x6057c3ab
cmp eax, edx
jne 0x406eb4
mov eax, dword [0x496720]
or eax, 0x1b687957
mov dword [0x496720], eax
mov eax, 0x208e90e5
mov ecx, esp
mov dword [ecx + 4], 4
mov dword [ecx], 0x239f
mov dword [esp + 0x48], eax
call fcn.0043b390
mov dword [esp + 0x6c], eax
mov dx, word [0x49e6a2]
mov ax, dx
inc eax
mov dx, ax
mov word [0x49e6a2], dx
movsx eax, dx
mov ecx, dword [0x498830]
sub eax, ecx
or eax, 0x27998994
mov ecx, dword [esp + 0x48]
cmp ecx, eax
je 0x406fa5
mov ax, word [0x49ef04]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x49ef04], dx
movsx ecx, ax
imul ecx, ecx, 0x580ce90d
add ecx, 0x49ca62a9
cmp ecx, 0x8960c46a
jne 0x406f7e
mov eax, 0x1020600
mov ecx, dword [0x49b038]
dec ecx
mov dword [0x49b038], ecx
imul ecx, ecx, 0xf25d4c73
mov dx, word [0x49e610]
mov si, dx
dec esi
mov di, si
mov word [0x49e610], di
movsx esi, dx
and ecx, esi
cmp eax, ecx
jle 0x406f74
jmp 0x406f79
jmp 0x406f79
jmp 0x406fa0
mov eax, dword [0x49bd30]
mov ecx, eax
dec ecx
mov dword [0x49bd30], ecx
imul eax, eax, 0xb2f15c22
mov ecx, dword [0x49bac8]
and ecx, eax
mov dword [0x49bac8], ecx
jmp 0x406fb5
mov eax, dword [0x49939c]
imul eax, eax, 0x56093d6d
mov dword [0x49939c], eax
mov eax, 0xd5d4e031
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x50]
add edx, 0x38
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], edx
mov dword [esp + 0x44], eax
call fcn.00455d20
mov ecx, dword [0x49bacc]
or ecx, 0x359fedd5
mov edx, dword [0x49c2d0]
xor edx, ecx
mov dword [0x49c2d0], edx
mov ecx, esp
mov dword [ecx + 4], 5
mov dword [ecx], 0x29bd
mov dword [esp + 0x40], eax
call fcn.0043b390
mov dword [esp + 0x68], eax
mov dword [0x49a99c], 0x68dbb9ca
mov eax, dword [esp + 0x6c]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 4
call fcn.00403dd0
mov eax, dword [0x495c24]
add eax, 0x9e73c21c
mov dword [0x495c24], eax
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x50]
add ecx, 0x4c
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455d20
mov ecx, dword [0x49b3a0]
and ecx, 0x2da2a19b
mov dword [0x49b3a0], ecx
mov ecx, dword [esp + 0x68]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 5
mov dword [esp + 0x3c], eax
call fcn.00403dd0
mov eax, dword [0x49be04]
mov ecx, eax
dec ecx
mov dword [0x49be04], ecx
mov ecx, 0x4a51e4bd
sub ecx, eax
mov di, word [0x49feea]
mov ax, di
and eax, ecx
mov di, ax
mov word [0x49feea], di
mov eax, esp
mov dword [eax], 0
call fcn.00451550
mov ecx, dword [esp + 0x50]
mov dword [ecx + 0x20], eax
mov eax, dword [0x49627c]
xor eax, 0xb395cbb7
mov dword [0x49627c], eax
mov eax, dword [ecx + 0x20]
shr eax, 9
mov dword [ecx + 0x20], eax
mov eax, dword [0x4983a0]
not eax
mov esi, dword [0x49cbe8]
or esi, eax
mov dword [0x49cbe8], esi
mov eax, dword [ecx + 0x20]
add eax, 0x200
mov dword [ecx + 0x24], eax
mov eax, dword [0x49a788]
xor eax, 0xb000180
mov dword [0x49a788], eax
mov dword [esp + 0x64], 0
mov eax, dword [0x49a8cc]
mov esi, eax
dec esi
mov dword [0x49a8cc], esi
add eax, 0xcc349770
mov esi, dword [0x498680]
xor esi, eax
mov dword [0x498680], esi
mov eax, dword [0x49ca84]
xor eax, 0xffffffff
mov esi, dword [esp + 0x44]
cmp esi, eax
mov dword [esp + 0x38], edx
jl 0x407174
mov eax, 0xd62e0ea
mov ecx, dword [0x499098]
dec ecx
mov dword [0x499098], ecx
xor ecx, 0xe0878488
cmp eax, ecx
jl 0x40716f
mov eax, dword [0x4967bc]
add eax, 0x294ea638
mov dword [0x4967bc], eax
jmp 0x407183
mov eax, dword [0x49635c]
add eax, 0x315190fe
mov dword [0x49635c], eax
mov dword [esp + 0x5c], 0
cmp dword [esp + 0x5c], 0x28
je 0x407336
mov eax, dword [0x496b2c]
mov ecx, dword [0x498658]
or ecx, eax
mov dword [0x498658], ecx
mov eax, dword [0x4958f0]
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx + 0xc], edx
mov dword [ecx + 0x14], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 8], 0x437570
mov dword [ecx + 4], 0
mov dword [ecx], 0
call eax
sub esp, 0x18
mov dword [esp + 0x60], eax
mov eax, dword [0x499094]
mov ecx, eax
dec ecx
mov dword [0x499094], ecx
mov dword [0x49c3a8], eax
cmp dword [esp + 0x60], 0
je 0x407316
mov eax, dword [0x495d70]
xor eax, 0x7a1ddc51
mov ecx, dword [0x49c0ac]
dec ecx
mov dword [0x49c0ac], ecx
and ecx, 0x3bae9e04
cmp eax, ecx
jne 0x40725e
mov eax, dword [0x49715c]
imul eax, eax, 0xe059c983
cmp eax, 0x2cf8a30
jne 0x407259
mov ax, word [0x49e794]
movsx ecx, ax
or ecx, 0x9d8803a
mov edx, dword [0x499440]
imul edx, ecx
mov dword [0x499440], edx
jmp 0x4072d5
mov eax, dword [0x498cbc]
imul eax, eax, 0x75a0b0d2
mov cx, word [0x49f172]
mov dx, cx
inc edx
mov si, dx
mov word [0x49f172], si
movsx edx, cx
mov edi, dword [0x49cd8c]
mov ebx, edi
inc ebx
mov dword [0x49cd8c], ebx
xor edx, edi
or edx, 0xbef4837e
cmp eax, edx
jne 0x4072d0
mov ax, word [0x49f982]
movsx ecx, ax
mov ax, word [0x4a02ac]
mov dx, ax
dec edx
mov ax, dx
mov word [0x4a02ac], ax
movsx edx, ax
imul ecx, edx
mov edx, dword [0x499260]
sub edx, ecx
mov dword [0x499260], edx
jmp 0x4072d5
mov eax, dword [esp + 0x64]
inc eax
mov dword [esp + 0x64], eax
mov eax, dword [0x496458]
imul eax, eax, 0x27f2b56e
mov dword [0x496458], eax
mov eax, dword [0x495900]
mov ecx, dword [esp + 0x60]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov ecx, dword [0x496770]
and ecx, 0x1d962fb8
mov dword [0x496770], ecx
mov dword [esp + 0x34], eax
mov eax, dword [0x4974c4]
imul eax, eax, 0xbff2a6a5
mov dword [0x4974c4], eax
mov eax, dword [esp + 0x5c]
add eax, 1
mov dword [esp + 0x5c], eax
jmp 0x40718b
mov ax, word [0x4a0a54]
mov cx, ax
and ecx, 0x6ce2
mov ax, cx
mov word [0x4a0a54], ax
cmp dword [esp + 0x64], 0
jle 0x40738c
mov ax, word [0x4a01ac]
mov cx, ax
add ecx, 0x6e009709
mov ax, cx
mov word [0x4a01ac], ax
mov ecx, dword [esp + 0x50]
call fcn.004015b0
mov ecx, dword [0x49ad98]
xor ecx, 0x6ff3dbe
mov dword [0x49ad98], ecx
mov eax, 0x8a8b60f7
mov ecx, dword [0x49abbc]
shl ecx, 0xa
or ecx, 0xe8ff705
mov edx, dword [0x49ccec]
imul edx, ecx
mov dword [0x49ccec], edx
mov ecx, dword [esp + 0x50]
add ecx, 0x38
mov edx, esp
mov dword [edx], ecx
mov dword [edx + 4], 0x14
mov dword [esp + 0x30], eax
call fcn.004030c0
mov eax, dword [0x497724]
imul eax, eax, 0xf60e6c5b
mov dword [0x497724], eax
mov eax, dword [esp + 0x50]
add eax, 0x4c
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0x14
call fcn.004030c0
mov si, word [0x4a0b8c]
mov ax, si
xor eax, 0x940d
mov si, ax
mov word [0x4a0b8c], si
mov eax, dword [0x49592c]
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx], edx
call eax
sub esp, 4
mov eax, dword [0x49a8f0]
mov ecx, dword [0x49c93c]
and ecx, eax
mov dword [0x49c93c], ecx
mov eax, dword [esp + 0x50]
mov ecx, dword [eax + 0x30]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0xaf1
call fcn.00403dd0
mov si, word [0x49f060]
movsx eax, si
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jge 0x407470
mov eax, dword [0x49baa0]
add eax, 0x2df652e4
mov dword [0x49baa0], eax
jmp 0x407480
mov eax, dword [0x49ae30]
imul eax, eax, 0x81332942
mov dword [0x49ae30], eax
mov eax, 0xdc51f251
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx + 0x34]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x31e
mov dword [esp + 0x2c], eax
call fcn.00403dd0
mov eax, dword [0x49bc98]
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jne 0x4074bb
mov eax, dword [0x49b57c]
mov dword [0x4984bc], eax
mov dword [esp + 0x58], 0
mov eax, dword [0x495b70]
inc eax
mov dword [0x495b70], eax
cmp eax, 0x292a7da3
jne 0x4074f1
mov eax, dword [0x49a00c]
mov ecx, 0xe510ec46
sub ecx, eax
mov eax, dword [0x4999a8]
sub eax, ecx
mov dword [0x4999a8], eax
mov eax, dword [esp + 0x50]
add eax, 0x80
mov ecx, eax
call fcn.00427fe0
test al, 1
jne 0x40762f
mov dword [0x49cb88], 0xb3fde5ed
call fcn.00437a00
mov dword [esp + 0x54], eax
mov eax, dword [0x49c468]
add eax, 0x201add29
mov dword [0x49c468], eax
mov eax, dword [esp + 0x50]
sub eax, 0xffffff80
mov ecx, eax
mov dword [esp + 0x28], eax
call fcn.00406630
mov ecx, dword [esp + 0x54]
xor edx, edx
mov dword [esp + 0x24], eax
mov eax, ecx
mov ecx, dword [esp + 0x24]
div ecx
mov dword [esp + 0x54], edx
mov eax, dword [0x496ad8]
and eax, 0x10
mov dword [0x496ad8], eax
mov eax, dword [esp + 0x54]
mov edx, esp
mov dword [edx], eax
mov ecx, dword [esp + 0x28]
call fcn.00428c00
sub esp, 4
mov ecx, eax
call fcn.004277a0
mov ecx, dword [esp + 0x78]
mov edx, esp
mov dword [edx + 4], eax
mov dword [edx], ecx
call fcn.00455d20
mov si, word [0x49df1c]
mov cx, si
or ecx, 0xc517
mov si, cx
mov word [0x49df1c], si
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x54]
mov edi, esp
mov dword [edi], edx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], ecx
mov ecx, edx
mov dword [esp + 0x1c], eax
call fcn.00428c00
sub esp, 4
add eax, 0x14
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x20]
call fcn.00435ce0
sub esp, 4
mov si, word [0x49faf8]
movsx ecx, si
mov si, word [0x49d1d0]
movsx edx, si
and edx, 0xd9026a7
xor ecx, edx
mov edx, dword [0x498ff8]
imul edx, ecx
mov dword [0x498ff8], edx
mov dword [esp + 0x58], 1
mov si, word [0x49d40c]
movsx ecx, si
xor ecx, 0x1541f75b
mov edx, dword [0x498278]
sub edx, ecx
mov dword [0x498278], edx
mov dword [esp + 0x18], eax
mov eax, dword [0x4986c0]
add eax, 0xed56dfbd
mov dword [0x4986c0], eax
mov eax, dword [esp + 0x58]
add esp, 0x7c
pop esi
pop edi
pop ebx
ret 8