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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x110
mov eax, dword [esp + 0x124]
mov ecx, dword [esp + 0x120]
mov edx, 0x9c97afa
mov dword [esp + 0x108], eax
mov dword [esp + 0x104], ecx
mov si, word [0x49936a]
mov ax, si
imul eax, eax, 0xf166ea5a
mov si, ax
mov word [0x49936a], si
mov si, word [0x498f7e]
mov ax, si
imul eax, eax, 0x65f67d1b
mov si, ax
mov word [0x498f7e], si
mov si, word [0x497384]
mov ax, si
and eax, 0x1545
mov si, ax
mov word [0x497384], si
mov si, word [0x49885e]
mov ax, si
dec eax
mov di, ax
mov word [0x49885e], di
movsx eax, si
xor eax, 0xe0d71b79
cmp edx, eax
je 0x440b4e
mov eax, dword [0x492634]
mov ecx, eax
inc ecx
mov dword [0x492634], ecx
imul eax, eax, 0xfc74b2da
mov ecx, dword [0x491d0c]
or ecx, eax
mov dword [0x491d0c], ecx
mov dword [esp + 0xe0], 0
mov ax, word [0x497a1e]
movsx ecx, ax
sar ecx, 7
imul ecx, ecx, 0x705d86cf
and ecx, 0x4898a65f
mov edx, dword [0x493508]
xor edx, ecx
mov dword [0x493508], edx
mov ecx, dword [esp + 0x108]
call fcn.0044ed30
cmp eax, 0xb
jbe 0x440d84
mov word [0x49723a], 0x91e6
lea eax, [esp + 0xcc]
mov ecx, eax
mov dword [esp + 0x60], eax
call fcn.0044d800
mov ecx, dword [0x4963ec]
xor ecx, 0xa525b1bf
mov dword [0x4963ec], ecx
mov ecx, dword [0x494b44]
add ecx, 0x4b767956
mov dword [0x494b44], ecx
mov ecx, dword [esp + 0x108]
mov edx, esp
lea esi, [esp + 0xb4]
mov dword [edx], esi
mov dword [edx + 8], 0xb
mov dword [edx + 4], 0
mov dword [esp + 0x5c], eax
mov dword [esp + 0x58], esi
call fcn.0041a940
sub esp, 0xc
mov eax, esp
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
mov ecx, dword [esp + 0x60]
call fcn.00419860
sub esp, 4
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x54], eax
call fcn.0044cf10
mov di, word [0x499530]
mov ax, di
mov di, word [0x49965c]
mov cx, di
dec ecx
xor eax, ecx
mov di, ax
movsx eax, di
mov di, cx
mov word [0x49965c], di
mov ecx, dword [0x494ffc]
xor eax, ecx
xor eax, 0x7b3ba085
mov dword [0x494ffc], eax
mov eax, esp
mov dword [eax + 4], 0xc
mov dword [eax], 0x2d63
call fcn.0044bdb0
mov dword [esp + 0x100], eax
mov eax, dword [0x493a14]
add eax, 0x4433cb5
mov dword [0x493a14], eax
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x50], eax
call fcn.00408b70
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx + 4], edx
mov dword [ecx], eax
call fcn.00456a90
test eax, eax
sete bl
movzx eax, bl
mov dword [esp + 0xc8], eax
mov eax, dword [0x495df4]
or eax, 0x6371
mov di, ax
mov word [0x49889c], di
mov eax, dword [esp + 0x100]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xc
call fcn.004019a0
mov di, word [0x498096]
mov ax, di
imul eax, eax, 0x8c216e05
mov di, ax
mov word [0x498096], di
cmp dword [esp + 0xc8], 0
je 0x440d54
mov ax, word [0x499406]
mov cx, ax
xor ecx, 0x7015
mov ax, cx
mov word [0x499406], ax
mov ecx, dword [esp + 0x108]
call fcn.0044ed30
add eax, 0xfffffff5
mov dword [esp + 0xe0], eax
mov dx, word [0x499816]
mov ax, dx
or eax, 0xad72
mov dx, ax
mov word [0x499816], dx
mov eax, dword [0x494258]
mov ecx, eax
dec ecx
mov dword [0x494258], ecx
mov ecx, dword [0x4921b0]
and eax, ecx
mov ecx, dword [0x491d64]
and ecx, eax
mov dword [0x491d64], ecx
lea ecx, [esp + 0xcc]
call fcn.0040af10
mov eax, dword [0x492f98]
and eax, 0x19a56a55
mov dword [0x492f98], eax
mov eax, dword [esp + 0x104]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0xa0]
call fcn.00448530
sub esp, 4
mov dword [0x493ed0], 0x2fa0fe20
mov ecx, esp
mov dword [ecx + 4], 2
mov dword [ecx], 0x35c0
mov dword [esp + 0x4c], eax
call fcn.0044bdb0
mov dword [esp + 0xfc], eax
mov eax, dword [0x495fb8]
shl eax, 5
and eax, 0xac5616a0
mov ecx, dword [0x493bf0]
sub ecx, eax
mov dword [0x493bf0], ecx
mov eax, esp
mov dword [eax + 4], 8
mov dword [eax], 0x26e
call fcn.0044bdb0
mov dword [esp + 0xf8], eax
mov dword [0x4927b0], 0x2c9d2361
mov eax, esp
mov dword [eax + 4], 8
mov dword [eax], 0x36d0
call fcn.0044bdb0
mov dword [esp + 0xf4], eax
mov dx, word [0x499958]
mov ax, dx
or eax, 0xeeb0
mov dx, ax
mov word [0x499958], dx
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x104]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0045c0f0
cmp eax, 0
jne 0x440eff
mov eax, 0xd097d4c6
mov ecx, dword [0x495d98]
mov edx, ecx
inc edx
mov dword [0x495d98], edx
or ecx, 0xeb2da06e
cmp eax, ecx
jg 0x440e98
mov word [0x497398], 0x40a9
mov eax, dword [esp + 0xf8]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x8c]
mov ecx, eax
mov dword [esp + 0x48], eax
call fcn.00448530
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x48]
mov dword [ecx], edx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x44], eax
call fcn.0042d0e0
sub esp, 4
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x40], eax
call fcn.0040af10
mov si, word [0x4971fc]
mov ax, si
imul eax, eax, 0xe2ea19c7
mov si, ax
mov word [0x4971fc], si
jmp 0x440f67
mov eax, dword [0x492f7c]
sar eax, 6
mov cx, word [0x498778]
movsx edx, cx
xor eax, edx
mov dword [0x496014], eax
mov eax, dword [esp + 0xf4]
mov edx, esp
mov dword [edx], eax
lea eax, [esp + 0x78]
mov ecx, eax
mov dword [esp + 0x3c], eax
call fcn.00448530
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x3c]
mov dword [ecx], edx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x38], eax
call fcn.0042d0e0
sub esp, 4
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x34], eax
call fcn.0040af10
mov dword [0x4940e8], 0xc4a8812
mov ax, word [0x4988a6]
mov cx, ax
imul ecx, ecx, 0x4320a504
mov ax, cx
mov word [0x4988a6], ax
mov ecx, dword [esp + 0xfc]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 2
call fcn.004019a0
mov dword [0x494ea8], 0x536d5653
mov ecx, dword [esp + 0xf8]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 8
call fcn.004019a0
mov ax, word [0x49967e]
movsx ecx, ax
mov edx, dword [0x494404]
and ecx, edx
cmp ecx, 0x2173677f
jle 0x440fe3
mov eax, dword [0x495784]
add eax, 0x616c579e
mov dword [0x495784], eax
mov eax, dword [esp + 0xf4]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 8
call fcn.004019a0
mov eax, dword [0x492ef8]
shl eax, 7
mov ecx, dword [0x49325c]
and ecx, eax
mov dword [0x49325c], ecx
lea ecx, [esp + 0xa0]
call fcn.0044ed30
mov ecx, dword [esp + 0xe0]
lea eax, [eax + ecx + 0xd]
mov dword [esp + 0xec], eax
mov eax, dword [0x496aa4]
and eax, 0x54404020
mov dword [0x496aa4], eax
mov eax, dword [esp + 0xec]
add eax, 4
mov ecx, esp
mov dword [ecx], eax
call fcn.00453369
mov dword [esp + 0xf0], eax
mov eax, dword [0x4943f0]
add eax, 0xd8e8f138
mov dword [0x4943f0], eax
cmp dword [esp + 0xf0], 0
jne 0x4410b6
mov eax, dword [0x492380]
inc eax
mov dword [0x492380], eax
mov ecx, dword [0x496d90]
mov edx, ecx
inc edx
mov dword [0x496d90], edx
sub eax, ecx
mov ecx, dword [0x49360c]
or ecx, eax
mov dword [0x49360c], ecx
mov dword [esp + 0x10c], 0
mov dword [esp + 0x74], 1
jmp 0x441730
mov ax, word [0x4973d6]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x4973d6], dx
movsx ecx, ax
mov esi, dword [0x4949d8]
and esi, ecx
mov dword [0x4949d8], esi
mov ecx, dword [esp + 0xec]
mov esi, dword [esp + 0xf0]
mov dword [esi], ecx
mov ax, word [0x498794]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x498794], dx
movsx ecx, ax
mov esi, dword [0x49498c]
xor esi, 0xffffffff
or esi, 0x53e18e33
cmp ecx, esi
je 0x441129
mov eax, dword [0x495c80]
imul eax, eax, 0x1b53c675
mov dword [0x495c80], eax
mov eax, 0xb5a5dc55
mov ecx, dword [esp + 0xf0]
mov dword [ecx + 4], 0
mov ecx, dword [0x496b1c]
cmp eax, ecx
jg 0x441163
mov eax, dword [0x496254]
not eax
mov ecx, dword [0x491f5c]
or eax, ecx
or eax, 0xfd36bbcf
mov dword [0x491f5c], eax
mov eax, 0xa4dd2a5
lea ecx, [esp + 0xa0]
mov dword [esp + 0x30], eax
call fcn.0044ed30
mov ecx, dword [esp + 0xf0]
mov dword [ecx + 8], eax
mov eax, dword [0x495ce0]
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jg 0x4411ea
mov eax, 0xbb06f54b
mov cx, word [0x497d2c]
mov dx, cx
inc edx
mov si, dx
mov word [0x497d2c], si
movsx edx, cx
imul edx, edx, 0x1295fa8e
mov edi, dword [0x493234]
dec edi
mov dword [0x493234], edi
add edx, edi
cmp eax, edx
jg 0x4411e5
mov eax, dword [0x492424]
or eax, 0x438e60a5
mov ecx, dword [0x496424]
sub ecx, eax
mov dword [0x496424], ecx
jmp 0x4411ea
mov eax, dword [esp + 0xf0]
mov byte [eax + 0xc], 2
mov eax, dword [0x4958ac]
and eax, 0x3e7707e5
mov dword [0x4958ac], eax
mov eax, dword [esp + 0xf0]
add eax, 0xd
lea ecx, [esp + 0xa0]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], eax
call fcn.00441750
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x24], eax
call fcn.0044ed30
mov ecx, esp
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x24]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x28]
mov dword [ecx], edx
call fcn.00452660
mov si, word [0x4983dc]
mov ax, si
inc eax
mov di, ax
mov word [0x4983dc], di
movsx eax, si
mov ecx, dword [0x496f1c]
xor eax, ecx
mov ecx, dword [0x493750]
imul ecx, eax
mov dword [0x493750], ecx
cmp dword [esp + 0xe0], 0
je 0x44133d
mov eax, 0x4682c032
mov ecx, dword [0x495070]
mov edx, ecx
dec edx
mov dword [0x495070], edx
add ecx, 0x303a6559
mov edx, dword [0x49707c]
mov esi, edx
dec esi
mov dword [0x49707c], esi
sub ecx, edx
mov dword [0x4937bc], ecx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x20], eax
call fcn.0044ed30
mov ecx, dword [esp + 0xf0]
lea eax, [eax + ecx + 0xd]
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x1c], eax
call fcn.00441750
add eax, 0xb
mov ecx, dword [esp + 0xe0]
mov edx, esp
mov dword [edx + 8], ecx
mov dword [edx + 4], eax
mov eax, dword [esp + 0x1c]
mov dword [edx], eax
call fcn.00452660
mov eax, dword [0x491ffc]
mov ecx, dword [0x4955e8]
or eax, ecx
mov ecx, dword [esp + 0x20]
cmp ecx, eax
jge 0x441329
mov eax, dword [0x496f2c]
xor eax, 0x20124a0e
mov dword [0x496f2c], eax
jmp 0x441338
mov eax, dword [0x4969f4]
add eax, 0x43a385a8
mov dword [0x4969f4], eax
jmp 0x44133d
mov eax, dword [0x496070]
mov ecx, dword [0x49466c]
add ecx, 0xfd5cc244
and eax, ecx
mov ecx, dword [0x493d6c]
sub ecx, eax
mov dword [0x493d6c], ecx
mov dword [esp + 0xe4], 0
mov eax, dword [0x493ad4]
imul eax, eax, 0x75ae52a8
mov dword [0x493ad4], eax
cmp dword [0x499e28], 0
je 0x441702
mov eax, 0x476bcb10
mov ecx, dword [0x496804]
or ecx, 0xd6d2e720
cmp eax, ecx
jne 0x4413b3
mov eax, dword [0x495624]
and eax, 0x94c35055
mov dword [0x495624], eax
jmp 0x441402
mov eax, dword [0x494d78]
or eax, 0x9a7a6d64
mov cx, word [0x497306]
movsx edx, cx
imul edx, edx, 0x12a0b062
cmp eax, edx
je 0x4413fd
mov eax, dword [0x492554]
mov ecx, eax
inc ecx
mov dword [0x492554], ecx
mov ecx, 0x41b236db
sub ecx, eax
mov eax, dword [0x493770]
or ecx, eax
or ecx, 0x748cb820
mov dword [0x493770], ecx
jmp 0x441402
mov eax, 0x55fda220
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x18], eax
call fcn.00417920
mov dword [0x4955e0], 0xeaec0fe5
mov ecx, dword [esp + 0x108]
mov eax, dword [esp + 0xec]
mov edx, dword [esp + 0xf0]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
call fcn.0040f3a0
sub esp, 8
mov ecx, dword [0x4944ec]
not ecx
imul ecx, ecx, 0xbb418e22
xor ecx, 0xcbf21adc
mov edx, dword [0x492328]
add edx, ecx
mov dword [0x492328], edx
mov di, word [0x49910e]
mov cx, di
inc ecx
mov bx, cx
mov word [0x49910e], bx
movsx ecx, di
mov edx, dword [esp + 0x18]
cmp edx, ecx
mov dword [esp + 0x14], eax
je 0x44149e
mov eax, dword [0x492784]
add eax, 0x22980200
mov dword [0x492784], eax
mov ecx, dword [0x499e28]
mov eax, esp
lea edx, [esp + 0x64]
mov dword [eax], edx
mov dword [eax + 4], 0
call fcn.004260f0
sub esp, 8
cmp eax, 0
jle 0x4416f3
mov eax, dword [0x4925dc]
or eax, 0x767a7318
mov dword [0x4925dc], eax
mov ecx, dword [0x499e28]
mov eax, dword [esp + 0x108]
mov edx, esp
mov dword [edx + 4], eax
lea eax, [esp + 0x64]
mov dword [edx], eax
mov dword [edx + 0xc], 0
mov dword [edx + 8], 2
call fcn.00448a40
sub esp, 0x10
mov dword [esp + 0xe4], eax
mov si, word [0x497b60]
mov ax, si
inc eax
mov si, ax
mov word [0x497b60], si
movsx eax, si
xor eax, 0xcce01f5c
mov ecx, dword [0x496120]
or ecx, eax
mov dword [0x496120], ecx
cmp dword [esp + 0xe4], 0
jg 0x441633
mov eax, dword [0x4960d0]
or eax, 0x7b3f23a9
mov dword [0x4960d0], eax
mov ecx, dword [0x499e28]
mov eax, esp
lea edx, [esp + 0x64]
mov dword [eax], edx
mov dword [eax + 4], 1
call fcn.004260f0
sub esp, 8
cmp eax, 0
jle 0x441624
mov eax, dword [0x493980]
or eax, 0x41692240
mov dword [0x493980], eax
mov ecx, dword [esp + 0x108]
call fcn.00417920
mov word [0x4979c0], 0xadf6
mov ecx, dword [esp + 0x108]
mov eax, dword [esp + 0xec]
mov edx, dword [esp + 0xf0]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
call fcn.0040f3a0
sub esp, 8
mov ecx, dword [0x495848]
mov edx, ecx
inc edx
mov dword [0x495848], edx
mov edx, dword [0x4949cc]
imul edx, ecx
mov dword [0x4949cc], edx
mov ecx, dword [0x499e28]
mov edx, dword [esp + 0x108]
mov esi, esp
mov dword [esi + 4], edx
lea edx, [esp + 0x64]
mov dword [esi], edx
mov dword [esi + 0xc], 0
mov dword [esi + 8], 2
mov dword [esp + 0x10], eax
call fcn.00448a40
sub esp, 0x10
mov dword [esp + 0xe4], eax
mov eax, dword [0x493928]
add eax, 0xe6d9308
mov dword [0x493928], eax
mov eax, dword [0x4935e0]
or eax, 0xb6dc8851
mov dword [0x4935e0], eax
mov eax, 0xc11add97
mov ecx, dword [0x496ed0]
inc ecx
mov dword [0x496ed0], ecx
cmp eax, ecx
jle 0x441665
mov ax, word [0x49875a]
movsx ecx, ax
shl ecx, 9
add ecx, 0xeba703ff
mov dword [0x496d7c], ecx
cmp dword [esp + 0xe4], 0
jg 0x4416e4
mov eax, 0x747e4bc6
mov ecx, dword [0x496284]
mov edx, ecx
dec edx
mov dword [0x496284], edx
and ecx, 0x777e638a
cmp eax, ecx
je 0x4416c0
mov eax, dword [0x492080]
mov ecx, eax
inc ecx
mov dword [0x492080], ecx
mov ecx, 0xe97e004f
sub ecx, eax
mov dx, word [0x49842e]
mov ax, dx
xor eax, ecx
mov dx, ax
mov word [0x49842e], dx
mov ecx, dword [esp + 0x108]
call fcn.00417920
mov ax, word [0x498c94]
mov cx, ax
and ecx, 0xd1a9
mov ax, cx
mov word [0x498c94], ax
mov eax, dword [0x495d34]
and eax, 0xdec35c2c
mov dword [0x495d34], eax
mov eax, dword [0x496d98]
add eax, 0xf99bca60
mov dword [0x496d98], eax
mov ax, word [0x4977c8]
mov cx, ax
or ecx, 0x9075
mov ax, cx
mov word [0x4977c8], ax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x10c], ecx
mov dword [esp + 0x74], 1
lea ecx, [esp + 0xa0]
call fcn.0040af10
mov eax, dword [esp + 0x10c]
add esp, 0x110
pop esi
pop edi
pop ebx
ret