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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x114
mov eax, dword [esp + 0x128]
mov ecx, dword [esp + 0x124]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x108], ecx
mov eax, dword [0x49b6a0]
not eax
and eax, 0x48363ab
mov ecx, dword [0x49c128]
add ecx, eax
mov dword [0x49c128], ecx
mov eax, dword [0x4a1a80]
not eax
mov dx, word [0x4a70fa]
mov cx, dx
or eax, ecx
or eax, 0x90a
mov dx, ax
mov word [0x4a70fa], dx
mov word [0x4a3d1a], 0x7318
mov eax, dword [0x49b238]
add eax, 0xc7a400b2
mov ecx, dword [0x499178]
xor eax, ecx
mov dword [0x49cebc], eax
mov dword [esp + 0xe4], 0
mov dx, word [0x4a325a]
movsx eax, dx
and eax, 0xad397cf5
mov ecx, dword [0x49faf0]
dec ecx
mov dword [0x49faf0], ecx
sub ecx, 0xb8fd98e9
and ecx, 0xf0c7fed5
cmp eax, ecx
je 0x4103d3
mov eax, dword [0x4a1708]
mov ecx, dword [0x49cef4]
or eax, ecx
or eax, 0xe7ed064f
mov dword [0x49cef4], eax
mov eax, dword [esp + 0x10c]
mov ecx, eax
call fcn.0042f050
cmp eax, 0xb
jbe 0x410680
mov eax, 0xbac33825
mov ecx, dword [0x49abb8]
imul ecx, ecx, 0x8e792bfa
mov dword [0x49abb8], ecx
lea ecx, [esp + 0xd0]
mov dword [esp + 0x64], eax
call fcn.0043a730
mov dx, word [0x4a77ca]
movsx ecx, dx
xor ecx, 0xffffffff
sub ecx, 0x59e4ca02
xor ecx, 0x111087dc
mov esi, dword [esp + 0x64]
cmp esi, ecx
mov dword [esp + 0x60], eax
jle 0x41044e
mov eax, dword [0x49b1bc]
or eax, 0xa011f25d
mov dword [0x49b1bc], eax
jmp 0x41045e
mov eax, dword [0x49e1dc]
imul eax, eax, 0x133d8826
mov dword [0x49e1dc], eax
mov eax, dword [0x49670c]
add eax, 0x5fbf2fdb
mov dword [0x49670c], eax
mov ecx, dword [esp + 0x10c]
mov eax, esp
lea edx, [esp + 0xb8]
mov dword [eax], edx
mov dword [eax + 8], 0xb
mov dword [eax + 4], 0
mov dword [esp + 0x5c], edx
call fcn.0040d340
sub esp, 0xc
mov eax, esp
mov ecx, dword [esp + 0x5c]
mov dword [eax], ecx
lea eax, [esp + 0xd0]
mov ecx, eax
mov dword [esp + 0x58], eax
call fcn.00451270
sub esp, 4
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x54], eax
call fcn.00420e90
mov eax, dword [0x498db8]
xor eax, 0xa1dfd5ff
mov dword [0x498db8], eax
mov eax, esp
mov dword [eax + 4], 0xc
mov dword [eax], 0xd4a
call fcn.00416c10
mov dword [esp + 0x104], eax
mov eax, dword [0x49f514]
xor eax, 0x5af7daeb
mov dword [0x49f514], eax
mov eax, dword [esp + 0x104]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x50], eax
call fcn.0042c740
mov ecx, esp
mov edx, dword [esp + 0x50]
mov dword [ecx + 4], edx
mov dword [ecx], eax
call fcn.00456360
test eax, eax
sete bl
movzx eax, bl
mov dword [esp + 0xcc], eax
mov eax, dword [0x499030]
mov ecx, dword [0x49e30c]
add eax, ecx
sub eax, 0xfcc561b4
cmp eax, 0x41802602
jge 0x410578
mov eax, dword [0x499330]
not eax
mov cx, word [0x4a6048]
mov dx, cx
inc edx
mov si, dx
mov word [0x4a6048], si
movsx edx, cx
imul edx, edx, 0xea19d7f2
and eax, edx
mov dword [0x4996e4], eax
mov eax, dword [esp + 0x104]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0xc
call fcn.004097d0
mov eax, dword [0x49ceb8]
mov ecx, dword [0x497d9c]
mov edx, ecx
inc edx
mov dword [0x497d9c], edx
add eax, ecx
cmp eax, 0x7c4c5b14
jge 0x4105bf
mov eax, dword [0x497f10]
or eax, 0x95c82f1d
mov dword [0x497f10], eax
cmp dword [esp + 0xcc], 0
je 0x41065c
mov eax, dword [0x49f554]
or eax, 0x2d137d8e
mov dword [0x49f554], eax
mov ecx, dword [esp + 0x10c]
call fcn.0042f050
add eax, 0xfffffff5
mov dword [esp + 0xe4], eax
mov eax, dword [0x49f12c]
inc eax
mov dword [0x49f12c], eax
mov ecx, dword [0x49c318]
mov edx, ecx
inc edx
mov dword [0x49c318], edx
mov edx, dword [0x4a055c]
not edx
neg edx
lea ecx, [ecx + edx + 1]
or eax, ecx
mov ecx, dword [0x49eea8]
mov edx, ecx
inc edx
mov dword [0x49eea8], edx
cmp eax, ecx
jne 0x410657
mov ax, word [0x4a4ad2]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x4a4ad2], ax
movsx ecx, ax
mov edx, dword [0x497168]
add edx, ecx
mov dword [0x497168], edx
jmp 0x41065c
mov ax, word [0x4a283e]
mov cx, ax
imul ecx, ecx, 0x3fe23efd
mov ax, cx
mov word [0x4a283e], ax
lea ecx, [esp + 0xd0]
call fcn.00407ab0
mov ax, word [0x4a3022]
mov cx, ax
and ecx, 0xcd6d
mov ax, cx
mov word [0x4a3022], ax
mov ecx, dword [esp + 0x108]
mov edx, esp
mov dword [edx], ecx
lea ecx, [esp + 0xa4]
call fcn.00430620
sub esp, 4
mov ecx, dword [0x497528]
and ecx, 0xdb576638
mov dword [0x497528], ecx
mov ecx, esp
mov dword [ecx + 4], 2
mov dword [ecx], 0x1574
mov dword [esp + 0x4c], eax
call fcn.00416c10
mov dword [esp + 0x100], eax
mov si, word [0x4a2efc]
movsx eax, si
mov ecx, dword [0x495724]
xor eax, ecx
mov dword [0x49aa1c], eax
mov eax, esp
mov dword [eax + 4], 8
mov dword [eax], 0xd6c
call fcn.00416c10
mov dword [esp + 0xfc], eax
mov si, word [0x4a2bec]
mov ax, si
add eax, 0xa0200008
mov si, ax
mov word [0x4a2bec], si
mov eax, esp
mov dword [eax + 4], 8
mov dword [eax], 0x299b
call fcn.00416c10
mov dword [esp + 0xf8], eax
mov eax, dword [0x497a08]
add eax, 0xc360b1
mov dword [0x497a08], eax
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x108]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00457060
cmp eax, 0
jne 0x410810
mov ax, word [0x4a5990]
mov cx, ax
imul ecx, ecx, 0xeaa663e6
mov ax, cx
mov word [0x4a5990], ax
mov ecx, dword [esp + 0xfc]
mov edx, esp
mov dword [edx], ecx
lea ecx, [esp + 0x90]
mov dword [esp + 0x48], ecx
call fcn.00430620
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x48]
mov dword [ecx], edx
lea ecx, [esp + 0xa4]
mov dword [esp + 0x44], eax
call fcn.004396d0
sub esp, 4
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x40], eax
call fcn.00407ab0
mov si, word [0x4a37b0]
mov ax, si
dec eax
mov di, ax
mov word [0x4a37b0], di
movsx eax, si
mov ecx, 0xe573c91e
sub ecx, eax
mov eax, dword [0x49c590]
xor ecx, eax
xor ecx, 0x4e21a83b
mov dword [0x49c590], ecx
jmp 0x41087d
mov eax, dword [0x49c420]
and eax, 0x9e220edb
mov dword [0x49c420], eax
mov eax, dword [esp + 0xf8]
mov ecx, esp
mov dword [ecx], eax
lea eax, [esp + 0x7c]
mov ecx, eax
mov dword [esp + 0x3c], eax
call fcn.00430620
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x3c]
mov dword [ecx], edx
lea ecx, [esp + 0xa4]
mov dword [esp + 0x38], eax
call fcn.004396d0
sub esp, 4
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x34], eax
call fcn.00407ab0
mov si, word [0x4a6a4a]
mov ax, si
xor eax, 0xa9ec
mov si, ax
mov word [0x4a6a4a], si
mov eax, 0x98dec0d9
mov ecx, dword [0x496abc]
add ecx, 0x19976dff
mov dword [0x496abc], ecx
mov ecx, dword [esp + 0x100]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 2
mov dword [esp + 0x30], eax
call fcn.004097d0
mov eax, dword [0x49cbe8]
inc eax
mov dword [0x49cbe8], eax
xor eax, 0x10000403
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jl 0x4108e3
mov eax, dword [0x49b0d8]
xor eax, 0x362987e0
mov ecx, dword [0x4a1264]
or ecx, eax
mov dword [0x4a1264], ecx
mov eax, 0x2e8991d6
mov ecx, dword [esp + 0xfc]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 8
mov dword [esp + 0x2c], eax
call fcn.004097d0
mov eax, dword [0x498b00]
mov ecx, eax
inc ecx
mov dword [0x498b00], ecx
xor eax, 0xb2a8d818
mov ecx, dword [0x49d3c8]
add ecx, eax
mov dword [0x49d3c8], ecx
mov eax, dword [esp + 0xf8]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 8
call fcn.004097d0
mov eax, dword [0x4a0e18]
mov ecx, dword [0x49d22c]
dec ecx
mov dword [0x49d22c], ecx
imul ecx, ecx, 0x557e6fe0
xor eax, ecx
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jne 0x410985
mov ax, word [0x4a2ac4]
movsx ecx, ax
imul ecx, ecx, 0xdd3e24f
and ecx, 0x3228cbb1
mov edx, dword [0x49dfa0]
imul edx, ecx
mov dword [0x49dfa0], edx
lea ecx, [esp + 0xa4]
call fcn.0042f050
mov ecx, dword [esp + 0xe4]
lea eax, [eax + ecx + 0xd]
mov dword [esp + 0xf0], eax
mov dx, word [0x4a75c2]
movsx eax, dx
xor eax, 0x5f633e5f
mov ecx, dword [0x49c994]
or ecx, eax
mov dword [0x49c994], ecx
mov eax, dword [esp + 0xf0]
add eax, 4
mov ecx, esp
mov dword [ecx], eax
call fcn.00453109
mov dword [esp + 0xf4], eax
mov eax, dword [0x49bf0c]
add eax, 0xb0bd1c17
cmp eax, 0x964c9840
jge 0x410a05
mov eax, dword [0x49968c]
shl eax, 6
mov ecx, dword [0x49b6c0]
and ecx, eax
mov dword [0x49b6c0], ecx
cmp dword [esp + 0xf4], 0
jne 0x410a5c
mov ax, word [0x4a2a1c]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x4a2a1c], ax
movsx ecx, ax
mov edx, 0xfe87ba8
sub edx, ecx
xor edx, 0x9231f9bd
mov ecx, dword [0x49be18]
or ecx, edx
mov dword [0x49be18], ecx
mov dword [esp + 0x110], 0
mov dword [esp + 0x78], 1
jmp 0x4110bb
mov eax, dword [0x496ca4]
add eax, 0x40b82ac2
mov dword [0x496ca4], eax
mov eax, dword [esp + 0xf0]
mov ecx, dword [esp + 0xf4]
mov dword [ecx], eax
mov eax, dword [0x49c484]
imul eax, eax, 0xe400f4a7
mov dword [0x49c484], eax
mov eax, dword [esp + 0xf4]
mov dword [eax + 4], 0
mov eax, dword [0x49cd6c]
inc eax
mov dword [0x49cd6c], eax
or eax, 0x3638
mov dx, ax
mov word [0x4a6c96], dx
lea eax, [esp + 0xa4]
mov ecx, eax
mov dword [esp + 0x28], eax
call fcn.0042f050
mov ecx, dword [esp + 0xf4]
mov dword [ecx + 8], eax
mov eax, dword [0x49c49c]
or eax, 0x1fef9d26
mov ecx, dword [0x49f1d0]
and ecx, eax
mov dword [0x49f1d0], ecx
mov eax, dword [esp + 0xf4]
mov byte [eax + 0xc], 2
mov eax, dword [0x4a0cc0]
and eax, 0x4adc7abf
mov dword [0x4a0cc0], eax
mov eax, dword [esp + 0xf4]
add eax, 0xd
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x24], eax
call fcn.00420e80
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x20], eax
call fcn.0042f050
mov ecx, esp
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x20]
mov dword [ecx + 4], eax
mov esi, dword [esp + 0x24]
mov dword [ecx], esi
call fcn.00452400
mov eax, dword [0x49ce5c]
imul eax, eax, 0x98f4df55
cmp eax, 0x4240a008
je 0x410b9a
mov eax, dword [0x495920]
inc eax
mov dword [0x495920], eax
sub eax, 0x1f650ec3
or eax, 0x9cd7e685
cmp eax, 0x1a7038
jne 0x410b86
mov eax, dword [0x494034]
or eax, 0x6a123498
mov dword [0x49d61c], eax
jmp 0x410b95
mov eax, dword [0x49ad94]
or eax, 0x51405400
mov dword [0x49ad94], eax
jmp 0x410b9a
cmp dword [esp + 0xe4], 0
je 0x410c45
mov eax, 0x8a794f81
mov cx, word [0x4a55e2]
mov dx, cx
imul edx, edx, 0x29b44586
mov cx, dx
mov word [0x4a55e2], cx
lea ecx, [esp + 0xa4]
mov dword [esp + 0x1c], eax
call fcn.0042f050
mov ecx, dword [esp + 0xf4]
lea eax, [eax + ecx + 0xd]
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0x18], eax
call fcn.00420e80
add eax, 0xb
mov ecx, dword [esp + 0xe4]
mov edx, esp
mov dword [edx + 8], ecx
mov dword [edx + 4], eax
mov eax, dword [esp + 0x18]
mov dword [edx], eax
call fcn.00452400
mov eax, dword [0x49b544]
mov ecx, dword [0x49bf3c]
add eax, ecx
sub eax, 0x534ff6af
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
jl 0x410c40
mov eax, dword [0x4a01ac]
mov ecx, dword [0x4a1418]
xor ecx, eax
mov dword [0x4a1418], ecx
jmp 0x410c45
mov eax, 0x5118788
mov ecx, dword [0x4997e0]
mov edx, dword [0x49ede0]
mov esi, edx
dec esi
mov dword [0x49ede0], esi
or ecx, edx
cmp eax, ecx
jle 0x410c94
mov ax, word [0x4a815a]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x4a815a], dx
movsx ecx, ax
or ecx, 0x3767b39b
mov esi, dword [0x494bf0]
and esi, ecx
mov dword [0x494bf0], esi
mov dword [esp + 0xe8], 0
mov eax, dword [0x497ef4]
mov ecx, eax
inc ecx
mov dword [0x497ef4], ecx
mov ecx, dword [0x499320]
add ecx, 0xd81fe22e
xor eax, ecx
mov ecx, dword [0x4a066c]
imul ecx, eax
mov dword [0x4a066c], ecx
cmp dword [0x4a8c4c], 0
je 0x411088
mov eax, dword [0x49f2e8]
and eax, 0xb7358f02
mov ecx, dword [0x49a7b8]
imul ecx, eax
mov dword [0x49a7b8], ecx
mov ecx, dword [esp + 0x10c]
call fcn.00432ed0
mov eax, dword [0x49be38]
add eax, 0x18a05019
mov dword [0x49be38], eax
mov ecx, dword [esp + 0x10c]
mov eax, dword [esp + 0xf0]
mov edx, dword [esp + 0xf4]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
call fcn.00429ad0
sub esp, 8
mov ecx, dword [0x49bf40]
or ecx, 0xc663db4a
mov dword [0x49bf40], ecx
mov di, word [0x4a5dd2]
mov cx, di
mov edx, dword [0x4940a8]
xor ecx, edx
mov di, word [0x4a350a]
mov dx, di
and edx, ecx
mov di, dx
mov word [0x4a350a], di
mov ecx, dword [0x4a8c4c]
mov edx, esp
lea esi, [esp + 0x68]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0x14], eax
call fcn.0044e260
sub esp, 8
cmp eax, 0
jle 0x411079
mov eax, dword [0x496774]
not eax
add eax, 0xbe309203
mov cx, ax
mov word [0x4a7676], cx
mov ecx, dword [0x4a8c4c]
mov eax, dword [esp + 0x10c]
mov edx, esp
mov dword [edx + 4], eax
lea eax, [esp + 0x68]
mov dword [edx], eax
mov dword [edx + 0xc], 0
mov dword [edx + 8], 2
call fcn.00406870
sub esp, 0x10
mov dword [esp + 0xe8], eax
mov eax, dword [0x499920]
xor eax, 0x601b985
mov dword [0x499920], eax
cmp dword [esp + 0xe8], 0
jg 0x410f6c
mov eax, 0x7a28fad3
mov ecx, dword [0x49f0bc]
xor ecx, 0xffffffff
cmp eax, ecx
jne 0x410e20
mov eax, dword [0x494780]
add eax, 0x6b34e1bf
mov dword [0x494780], eax
mov ecx, dword [0x4a8c4c]
mov eax, esp
lea edx, [esp + 0x68]
mov dword [eax], edx
mov dword [eax + 4], 1
call fcn.0044e260
sub esp, 8
cmp eax, 0
jle 0x410f1e
mov ax, word [0x4a20e4]
movsx ecx, ax
and ecx, 0xf85def97
cmp ecx, 0xe9ca699f
jle 0x410e70
mov eax, dword [0x498594]
xor eax, 0xe97f597d
mov dword [0x498594], eax
mov ecx, dword [esp + 0x10c]
call fcn.00432ed0
mov ecx, dword [0x495284]
or ecx, 0x4c62862f
mov dword [0x495284], ecx
mov ecx, dword [esp + 0x10c]
mov eax, dword [esp + 0xf0]
mov edx, dword [esp + 0xf4]
mov esi, esp
mov dword [esi + 4], eax
mov dword [esi], edx
call fcn.00429ad0
sub esp, 8
mov di, word [0x4a73be]
movsx ecx, di
and ecx, 0xe6a966fe
mov dword [0x49c7c8], ecx
mov ecx, dword [0x4a8c4c]
mov edx, dword [esp + 0x10c]
mov esi, esp
mov dword [esi + 4], edx
lea edx, [esp + 0x68]
mov dword [esi], edx
mov dword [esi + 0xc], 0
mov dword [esi + 8], 2
mov dword [esp + 0x10], eax
call fcn.00406870
sub esp, 0x10
mov dword [esp + 0xe8], eax
mov eax, dword [0x4957a0]
add eax, 0x409aa21f
xor eax, 0x7638633d
mov ecx, dword [0x496cc0]
sub ecx, eax
mov dword [0x496cc0], ecx
mov eax, dword [0x495450]
mov ecx, eax
inc ecx
mov dword [0x495450], ecx
xor eax, 0x3caf2c3c
cmp eax, 0x366e38a8
je 0x410f67
mov ax, word [0x4a65ce]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x4a65ce], ax
movsx ecx, ax
add ecx, 0xa6321d26
mov edx, dword [0x499b88]
imul edx, ecx
mov dword [0x499b88], edx
jmp 0x410f6c
mov eax, 0xc48ac992
mov ecx, dword [0x49cbf4]
xor ecx, 0xe45dbcca
xor ecx, 0xe8f764e6
cmp eax, ecx
je 0x410fb1
mov eax, dword [0x49dfa8]
mov ecx, eax
dec ecx
mov dword [0x49dfa8], ecx
imul eax, eax, 0x664c3683
mov ecx, dword [0x49cd6c]
lea eax, [eax + ecx - 0x4057c7e5]
mov dword [0x49cd6c], eax
cmp dword [esp + 0xe8], 0
jg 0x410ffe
mov eax, dword [0x49709c]
add eax, 0xf4e77dcd
mov dword [0x49709c], eax
mov ecx, dword [esp + 0x10c]
call fcn.00432ed0
mov eax, dword [0x497ec4]
dec eax
mov dword [0x497ec4], eax
imul eax, eax, 0xe830c944
add eax, 0x61f32651
mov ecx, dword [0x49fae4]
sub ecx, eax
mov dword [0x49fae4], ecx
mov eax, dword [0x4a09dc]
mov ecx, eax
dec ecx
mov dword [0x4a09dc], ecx
add eax, 0x358a606d
mov ecx, dword [0x49b250]
cmp eax, ecx
jle 0x411074
mov eax, dword [0x4a15d4]
dec eax
mov dword [0x4a15d4], eax
imul eax, eax, 0xde99d2df
add eax, 0x54c60fa5
mov ecx, dword [0x49aa2c]
inc ecx
mov dword [0x49aa2c], ecx
sub ecx, 0x8b9d80d0
xor ecx, 0xae39a390
cmp eax, ecx
jl 0x41106f
mov eax, dword [0x4a1624]
or eax, 0x166baa1a
mov ecx, dword [0x4a0e0c]
imul ecx, eax
mov dword [0x4a0e0c], ecx
jmp 0x411074
jmp 0x411079
mov eax, dword [0x498b14]
xor eax, 0xb60abb8a
mov dword [0x498b14], eax
mov eax, dword [0x4972b4]
dec eax
mov dword [0x4972b4], eax
mov ecx, dword [0x49f70c]
xor eax, ecx
xor eax, 0xcd6cd9e4
mov dword [0x49f70c], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x110], eax
mov dword [esp + 0x78], 1
lea ecx, [esp + 0xa4]
call fcn.00407ab0
mov eax, dword [esp + 0x110]
add esp, 0x114
pop esi
pop edi
pop ebx
ret