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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xb0
mov esi, esp
mov dword [esi + 0x3c], ecx
mov eax, dword [0x4a12c0]
xor eax, ebp
mov dword [esi + 0xa8], eax
mov eax, 0xc35ed0e7
jmp 0x41fb10
mov ecx, dword [esi + 0x78]
call fcn.00409890
mov eax, dword [0x4a3000]
mov edi, 0x61807b15
mov ebx, 0xa9024733
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xa9024733
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, edi
cmp dword [0x4a2ffc], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
nop word [eax + eax]
cmp eax, 0xcff2e4a6
jle 0x41fb80
cmp eax, 0x3919d5a0
jle 0x41fce0
cmp eax, 0x4eebdd69
jle 0x41fd92
cmp eax, 0x6f1b59f5
jle 0x41fecc
cmp eax, 0x6f1b59f6
je 0x41fee7
cmp eax, 0x77dcc096
jne 0x41fb10
mov ecx, dword [esi + 0x48]
mov eax, 0x3000
and ecx, eax
mov eax, 0x4eebdd6a
cmp ecx, 0x2000
mov dword [esi + 0x44], ecx
sete byte [esi + 2]
cmp ecx, 0x3000
mov ecx, 0xcff2e4a7
cmove eax, ecx
jmp 0x41fb10
cmp eax, 0xb857625e
jg 0x41fd40
cmp eax, 0xa9024732
jg 0x41fe00
cmp eax, 0x85f18526
je 0x41ff0a
cmp eax, 0x9c7508a2
je 0x41ff14
cmp eax, 0xa81e77a0
jne 0x41fb10
vmovsd xmm0, qword [esi + 0x68]
mov eax, dword [esi + 0x50]
mov eax, dword [esi + 0x54]
mov ecx, dword [esi + 0x58]
mov dword [esi + 0x18], ecx
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x84], eax
mov eax, 0xa1c62558
mov dword [esi + 0x14], ecx
nop dword [eax]
cmp eax, 0xa15da0b
jle 0x41fc10
cmp eax, 0xa15da0c
je 0x41fc41
cmp eax, 0x6f1b23e4
je 0x41fc64
cmp eax, 0x70439a36
jne 0x41fbe0
jmp 0x41ff91
cmp eax, 0xa1c62558
je 0x41fcbe
cmp eax, 0xc2ef3ed6
jne 0x41fbe0
mov eax, dword [0x4a3010]
mov ebx, 0x6f1b23e4
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xa15da0c
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
jmp 0x41fc9c
push dword [esi + 8]
push 0
push dword [esi + 0x84]
push dword [esi + 0x18]
push dword [esi + 0x14]
call fcn.0042ef40
add esp, 0x14
mov eax, 0x6f1b23e4
jmp 0x41fbe0
push dword [esi + 8]
push 0
push dword [esi + 0x84]
push dword [esi + 0x18]
push dword [esi + 0x14]
call fcn.0042ef40
add esp, 0x14
mov dword [esi + 0x78], eax
mov eax, dword [0x4a3010]
mov ebx, 0x70439a36
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0xa15da0c
sete cl
cmove eax, ebx
cmp dword [0x4a300c], 0xa
mov edi, 0xa15da0c
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x41fbe0
lea eax, [esi + 0x88]
mov dword [esi + 8], eax
mov eax, 0xc2ef3ed6
jmp 0x41fbe0
cmp eax, 0x134b5b04
jg 0x41fe40
cmp eax, 0xcff2e4a7
je 0x41ffba
cmp eax, 0xd453a1f1
je 0x41ffd2
cmp eax, 0xe8fb47ca
jne 0x41fb10
mov eax, dword [esi + 0x70]
mov ecx, eax
neg ecx
cmovs ecx, eax
mov eax, 0xa7c5ac5
imul edx, ecx, 0x7597
shr edx, 5
mulx eax, eax, eax
shr eax, 7
add dword [esi + 0x20], eax
mov eax, 0x9c7508a2
jmp 0x41fb10
cmp eax, 0xc35ed0e6
jg 0x41fe95
cmp eax, 0xb857625f
je 0x41ffea
cmp eax, 0xb91d340f
je 0x41fff4
cmp eax, 0xc05e35d6
jne 0x41fb10
mov eax, dword [0x4a3000]
mov ebx, 0xb857625f
mov edi, 0x3919d5a1
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x3919d5a1
jmp 0x420390
cmp eax, 0x3919d5a1
je 0x42000a
cmp eax, 0x3c252400
je 0x420014
cmp eax, 0x47e48b0b
jne 0x41fb10
mov edx, dword [0x4a3000]
mov ecx, dword [0x4a2ffc]
vmovsd xmm0, qword [ebp + 0x1c]
mov edi, 0x85f18526
lea eax, [edx + 1]
imul eax, edx
vmovsd qword [esi + 0x60], xmm0
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x3c252400
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x41fb10
cmp eax, 0xa9024733
je 0x42001e
cmp eax, 0xae150961
je 0x420170
cmp eax, 0xb1b0339a
jne 0x41fb10
mov eax, dword [0x4a3000]
mov edi, 0xc05e35d6
mov ebx, 0x3919d5a1
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x3919d5a1
jmp 0x41faea
cmp eax, 0x134b5b05
je 0x4202ab
cmp eax, 0x34cfd287
je 0x4202ee
cmp eax, 0x35e6688a
jne 0x41fb10
push dword [esi + 0x44]
push dword [esi + 0x1c]
mov edi, dword [esi + 0x24]
push edi
call fcn.00435a20
add esp, 0xc
movzx ecx, byte [esi + 2]
mov dword [esi + 0x20], eax
mov edx, 0x9c7508a2
mov dword [esi + 0x40], edi
mov eax, ecx
xor al, 0xfe
test al, cl
mov eax, 0x134b5b05
cmove eax, edx
jmp 0x41fb10
cmp eax, 0xc35ed0e7
je 0x420316
cmp eax, 0xc9a55d0c
je 0x42036e
cmp eax, 0xca3d0955
jne 0x41fb10
mov eax, dword [esi + 0x30]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x1c], eax
mov eax, 0x35e6688a
jmp 0x41fb10
cmp eax, 0x4eebdd6a
jne 0x42055a
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x4c], eax
mov eax, 0xd453a1f1
jmp 0x41fb10
vmovsd xmm0, qword [esi + 0x60]
mov eax, 0xb91d340f
vandpd xmm0, xmm0, xmmword [0x459220]
vucomisd xmm0, qword [0x459210]
seta byte [esi + 3]
jmp 0x41fb10
mov eax, 0x47e48b0b
jmp 0x41fb10
mov eax, dword [esi + 0x20]
lea edi, [esi + 0x90]
mov ecx, edi
add eax, 0x32
push 0
push eax
call fcn.00430100
vmovsd xmm0, qword [ebp + 0x1c]
mov eax, dword [esi + 0x40]
mov ecx, dword [ebp + 0x14]
mov dword [esi + 0x50], eax
vmovsd qword [esi + 0x68], xmm0
call fcn.0040fbd0
push eax
push 0
lea eax, [esi + 0x88]
push eax
push dword [esi + 0x10]
call fcn.00430650
add esp, 0x10
mov ecx, 0x7023846f
mov dword [esi + 0x54], eax
mov dword [esi + 8], edi
nop word cs:[eax + eax]
cmp ecx, 0x9dbe4c7
je 0x4203ad
cmp ecx, 0x7023846f
jne 0x41ff70
mov eax, dword [esi + 8]
mov ecx, 0x9dbe4c7
mov eax, dword [eax + 0x10]
jmp 0x41ff70
mov edi, dword [esi + 0x78]
mov eax, 0xd9f49411
nop dword [eax]
cmp eax, 0xd9f49411
je 0x41ffb3
cmp eax, 0xc7fee0c9
jne 0x41ffa0
jmp 0x4203d0
mov eax, 0xc7fee0c9
jmp 0x41ffa0
mov dword [esi + 0x24], 0xffffffff
mov eax, 0x35e6688a
mov dword [esi + 0x1c], 0xffffffff
jmp 0x41fb10
mov ecx, dword [esi + 0x4c]
call fcn.0042f290
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, 0xca3d0955
jmp 0x41fb10
mov eax, 0x34cfd287
jmp 0x41fb10
cmp byte [esi + 3], 0
mov eax, 0x9c7508a2
mov ecx, 0xb1b0339a
cmovne eax, ecx
jmp 0x41fb10
mov eax, 0xc05e35d6
jmp 0x41fb10
mov eax, 0x6f1b59f6
jmp 0x41fb10
lea ecx, [ebp + 0xc]
mov eax, dword [esi + 4]
vmovsd xmm0, qword [ecx]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x10]
movzx edx, byte [esi + 1]
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x2c]
sub esp, 0x20
vmovsd xmm0, qword [eax]
movsx eax, byte [ebp + 0x18]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], edi
mov edi, dword [ebp + 0x14]
mov edx, dword [ebp + 8]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
mov dword [esp], edx
call fcn.00431c20
mov eax, 0xbc7af574
nop word cs:[eax + eax]
cmp eax, 0x1fc136a5
jle 0x420100
cmp eax, 0x1fc136a6
je 0x420499
cmp eax, 0x4c4e52be
je 0x42011c
cmp eax, 0x5bd84e7f
jne 0x420080
lea eax, [esi + 0x90]
mov dword [esi + 0x78], eax
mov ecx, dword [esi + 0x78]
call fcn.004093e0
mov edx, dword [0x4a3410]
mov ecx, dword [0x4a340c]
mov edi, 0xf31118c8
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x4c4e52be
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x420080
cmp eax, 0xbc7af574
je 0x420131
cmp eax, 0xf31118c8
jne 0x420080
mov eax, 0x1fc136a6
jmp 0x420080
lea ecx, [esi + 0x90]
call fcn.004093e0
mov eax, 0x5bd84e7f
jmp 0x420080
mov eax, dword [0x4a3410]
mov edi, 0x5bd84e7f
mov ebx, 0x4c4e52be
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x4c4e52be
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, edi
cmp dword [0x4a340c], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x420080
lea ecx, [ebp + 0xc]
mov eax, dword [esi + 4]
vmovsd xmm0, qword [ecx]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x10]
movzx edx, byte [esi + 1]
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x2c]
sub esp, 0x20
vmovsd xmm0, qword [eax]
movsx eax, byte [ebp + 0x18]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], edi
mov edi, dword [ebp + 0x14]
mov edx, dword [ebp + 8]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
mov dword [esp], edx
call fcn.00431c20
mov eax, 0xbc7af574
nop word cs:[eax + eax]
cmp eax, 0x1fc136a5
jle 0x420240
cmp eax, 0x1fc136a6
je 0x41fac8
cmp eax, 0x4c4e52be
je 0x420258
cmp eax, 0x5bd84e7f
jne 0x4201d0
lea eax, [esi + 0x90]
mov dword [esi + 0x78], eax
mov ecx, dword [esi + 0x78]
call fcn.004093e0
mov eax, dword [0x4a3410]
mov ebx, 0xf31118c8
mov edi, 0x4c4e52be
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x4c4e52be
sete cl
cmove eax, ebx
cmp dword [0x4a340c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x4201d0
cmp eax, 0xbc7af574
je 0x42026d
cmp eax, 0xf31118c8
jne 0x4201d0
mov eax, 0x1fc136a6
jmp 0x4201d0
lea ecx, [esi + 0x90]
call fcn.004093e0
mov eax, 0x5bd84e7f
jmp 0x4201d0
mov eax, dword [0x4a3410]
mov edi, 0x5bd84e7f
mov ebx, 0x4c4e52be
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x4c4e52be
sete cl
cmove eax, edi
cmp dword [0x4a340c], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x4201d0
mov edx, dword [0x4a3000]
mov ecx, dword [0x4a2ffc]
mov edi, 0x85f18526
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x47e48b0b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x41fb10
sub esp, 0xc
vmovsd xmm0, qword [ebp + 0x1c]
lea eax, [esi + 0x70]
mov dword [esp + 8], eax
vmovsd qword [esp], xmm0
call fcn.00440d53
fstp st(0)
add esp, 0xc
mov eax, 0xe8fb47ca
jmp 0x41fb10
push eax
push eax
mov eax, esp
mov dword [esi + 4], eax
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x10], eax
lea eax, [esi + 0x90]
mov dword [esi + 0x84], eax
mov eax, 0x4823a8d2
nop word cs:[eax + eax]
cmp eax, 0x1a4cbcd7
je 0x4204ab
cmp eax, 0x4823a8d2
jne 0x420340
mov ecx, dword [esi + 0x84]
sub esp, 4
movzx eax, byte [esi + 0x74]
mov byte [esp], al
call fcn.0040aa10
mov eax, 0x1a4cbcd7
jmp 0x420340
mov eax, dword [0x4a3000]
mov ebx, 0xae150961
mov edi, 0xa9024733
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xa9024733
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x4a2ffc], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x41fb10
mov dword [esi + 0x78], eax
lea ecx, [esi + 0x90]
mov eax, dword [esi + 0x78]
mov dword [esi + 0x58], eax
push 0
call fcn.00426570
mov dword [esi + 0x5c], eax
mov eax, 0xa81e77a0
jmp 0x41fb10
vmovsd xmm0, qword [ebp + 0x1c]
lea eax, [esi + 0x78]
vmovsd qword [esi + 8], xmm0
vmovsd xmm0, qword [esi + 8]
vmovsd qword [esi + 0x78], xmm0
push eax
call fcn.00440e4d
add esp, 4
mov word [esi + 0x82], ax
mov eax, dword [0x4a2ff8]
mov edx, 0xe9a42ba3
mov ebx, 0xdb7f3142
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x4a2ff4], 0xa
setl cl
or cl, al
mov eax, 0xee2c049
mov ecx, 0x930bf1b6
cmovne eax, ecx
mov ecx, 0xee2c049
cmovne ecx, edx
nop dword [eax + eax]
cmp ebx, 0xe9a42ba2
jle 0x420470
cmp ebx, 0xee2c049
je 0x420484
cmp ebx, 0x86751e8
je 0x420501
cmp ebx, 0xe9a42ba3
jne 0x420440
movsx edx, word [esi + 0x82]
mov ebx, eax
jmp 0x420440
cmp ebx, 0x930bf1b6
je 0x420492
cmp ebx, 0xdb7f3142
jne 0x420440
mov ebx, ecx
jmp 0x420440
movzx ebx, word [esi + 0x82]
mov ebx, 0xe9a42ba3
jmp 0x420440
mov ebx, 0x86751e8
jmp 0x420440
mov ecx, dword [esi + 0x78]
call fcn.00409890
mov eax, 0xae150961
jmp 0x41fb10
mov eax, dword [esi + 0x84]
mov eax, dword [esi + 0x84]
lea ecx, [eax + 0x10]
mov dword [esi + 8], ecx
mov ecx, 0xa54f07b0
nop word cs:[eax + eax]
cmp ecx, 0xd76e2436
je 0x42052d
cmp ecx, 0xa54f07b0
jne 0x4204d0
mov ecx, dword [esi + 8]
mov dword [ecx], 0
mov dword [eax + 0x14], 0xf
mov byte [esi + 0x82], 0
mov dword [esi + 0x78], eax
mov ecx, 0xd76e2436
jmp 0x4204d0
mov dword [esi + 0x84], edx
lea ecx, [esi + 0x90]
cmp dword [esi + 0x84], 0
mov dword [esi + 0x28], edi
setle byte [esi + 1]
call fcn.00419520
mov dword [esi + 0x2c], eax
mov eax, 0xc9a55d0c
jmp 0x41fb10
lea eax, [esi + 0x82]
push eax
push dword [esi + 0x78]
call fcn.00409dc0
add esp, 8
mov ecx, dword [ebp + 0x14]
mov eax, dword [esi + 0x84]
call fcn.0040fbd0
mov dword [esi + 0x48], eax
mov eax, 0x77dcc096
jmp 0x41fb10
cmp eax, 0x61807b15
jne 0x41fb10
mov ecx, dword [esi + 0xa8]
xor ecx, ebp
call fcn.0043a0c0
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x1c