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

Disassembly:
sub esp, 0x70
xor eax, eax
push ebx
push ebp
push esi
push edi
mov ebp, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov byte [esp + 0x64], al
mov byte [esp + 0x65], al
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov byte [esp + 0x58], al
mov byte [esp + 0x59], al
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov byte [esp + 0x4c], al
mov byte [esp + 0x4d], al
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov byte [esp + 0x7c], al
mov byte [esp + 0x7d], al
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov byte [esp + 0x40], al
mov byte [esp + 0x41], al
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov byte [esp + 0x70], al
mov byte [esp + 0x71], al
mov dword [esp + 0x10], eax
mov edi, edi
cmp ebp, dword [0x4a043c]
jg 0x40f214
test ebp, ebp
jle 0x40f214
mov ebx, ebp
shl ebx, 4
add ebx, dword [0x4a0470]
test ebx, ebx
je 0x40f273
inc ebp
lea eax, [ebp - 1]
mov dword [0x49f6f4], eax
mov edx, dword [ebx + 4]
mov eax, dword [edx]
movzx esi, word [eax + 8]
xor ecx, ecx
mov dword [esp + 0x30], 0
cmp si, 0x7f
je 0x40f093
mov eax, edx
jmp 0x40f080
mov edi, dword [eax + 4]
add eax, 4
inc ecx
cmp word [edi + 8], 0x7f
jne 0x40f080
test ecx, ecx
jbe 0x40f093
dec ecx
test si, si
jne case.0x40f0cf.8
mov esi, dword [edx]
mov eax, dword [esi]
cmp eax, 4
je 0x40f120
cmp eax, 0xd
je 0x40f1f1
cmp eax, 0xe
je 0x40f19c
cmp eax, 8
je 0x40f21b
sub eax, 5
cmp eax, 0x1b
ja case.0x40f0cf.8
movzx ecx, byte [eax + 0x40f444]
jmp dword [ecx*4 + 0x40f404]
mov ecx, dword [edx + 4]
cmp word [ecx + 8], 0x7f
jne 0x42b37f
sub dword [esp + 0x2c], 1
jne 0x42b433
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
push edx
push eax
push ecx
mov ebx, dword [esp + 0x30]
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
call fcn.0040fb30
test eax, eax
je case.0x40f0cf.8
jmp 0x42b39f
mov edi, dword [esp + 0x30]
xor eax, eax
test ax, ax
je 0x40f143
mov esi, dword [edx + edi*4 + 4]
movzx eax, word [esi + 8]
inc edi
mov dword [esp + 0x30], edi
cmp ax, 0x7f
jne 0x40f126
jmp 0x42b469
cmp dword [esi], 5
jne 0x40f12b
mov ecx, dword [edx + ecx*4]
cmp word [ecx + 8], 0
jne 0x40f175
cmp dword [ecx], 5
jne 0x40f175
mov eax, dword [esp + 0x10]
inc dword [esp + 0x14]
mov dword [esp + 0x34], eax
inc eax
lea edi, [esp + 0x34]
lea esi, [esp + 0x50]
mov dword [esp + 0x10], eax
call fcn.0040f460
mov ecx, dword [esp + 0x30]
mov eax, dword [ebx + 4]
mov eax, dword [eax + ecx*4 + 4]
inc ecx
cmp word [eax + 8], 0
jne case.0x40f0cf.8
mov eax, dword [eax]
cmp eax, 0x22
je case.0x40f0cf.8
jmp 0x42b326
mov ecx, dword [edx + 4]
cmp word [ecx + 8], 0x7f
jne 0x42b37f
dec dword [esp + 0x1c]
dec dword [esp + 0x10]
cmp dword [esp + 0x38], 0
je 0x42b310
cmp byte [esp + 0x41], 0
jne 0x42b31a
mov eax, dword [esp + 0x3c]
mov edi, dword [eax]
lea esi, [esp + 0x38]
call fcn.0040f4a0
cmp dword [esp + 0x1c], 0
jl 0x42b45d
cmp dword [esp + 0x10], edi
je case.0x40f0cf.8
jmp 0x42b45d
mov eax, dword [esp + 0x10]
inc dword [esp + 0x1c]
mov dword [esp + 0x30], eax
inc eax
lea edi, [esp + 0x30]
lea esi, [esp + 0x38]
mov dword [esp + 0x10], eax
call fcn.0040f460
jmp case.0x40f0cf.8
xor ebx, ebx
jmp 0x40f04f
mov edx, dword [edx + 4]
cmp word [edx + 8], 0x7f
jne 0x42b36d
mov ebx, dword [esp + 0x10]
dec dword [esp + 0x14]
dec ebx
cmp dword [esp + 0x50], 0
mov dword [esp + 0x10], ebx
je 0x42b300
cmp byte [esp + 0x59], 0
mov eax, dword [esp + 0x54]
jne 0x42b308
mov edi, dword [eax]
lea esi, [esp + 0x50]
call fcn.0040f4a0
cmp dword [esp + 0x14], 0
jl 0x42b454
cmp ebx, edi
je case.0x40f0cf.8
jmp 0x42b454
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
push eax
push ecx
push 0
call fcn.0040fb30
test eax, eax
jne 0x42b39f
cmp dword [esp + 0x2c], eax
jne 0x42b433
lea eax, [esp + 0x68]
call fcn.00411850
lea eax, [esp + 0x38]
call fcn.00411850
lea eax, [esp + 0x74]
call fcn.00411850
lea eax, [esp + 0x44]
call fcn.00411850
lea eax, [esp + 0x50]
call fcn.00411850
lea eax, [esp + 0x5c]
call fcn.00411850
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret
mov eax, dword [esp + 0x2c]
inc eax
cmp eax, 1
jg 0x42b433
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
push ecx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x14]
push edx
push eax
jmp 0x40f0fe
mov edx, dword [edx + 4]
cmp word [edx + 8], 0x7f
jne 0x42b36d
mov eax, dword [esp + 0x10]
inc dword [esp + 0x18]
mov dword [esp + 0x30], eax
inc eax
lea edi, [esp + 0x30]
lea esi, [esp + 0x68]
mov dword [esp + 0x10], eax
call fcn.0040f460
jmp case.0x40f0cf.8
mov eax, dword [esp + 0x10]
inc dword [esp + 0x20]
mov dword [esp + 0x30], eax
inc eax
lea edi, [esp + 0x30]
lea esi, [esp + 0x74]
mov dword [esp + 0x10], eax
call fcn.0040f460
jmp case.0x40f0cf.8
mov ebx, dword [esp + 0x10]
dec dword [esp + 0x18]
dec ebx
lea eax, [esp + 0x68]
mov dword [esp + 0x10], ebx
call fcn.00411d30
test al, al
jne 0x42b1a6
lea eax, [esp + 0x68]
call fcn.00411d40
mov edi, dword [eax]
lea esi, [esp + 0x68]
call fcn.0040f4a0
cmp dword [esp + 0x18], 0
jl 0x42b43f
cmp ebx, edi
je case.0x40f0cf.8
jmp 0x42b43f
mov ecx, dword [edx + 4]
cmp word [ecx + 8], 0x7f
jne 0x42b37f
mov ebx, dword [esp + 0x10]
dec dword [esp + 0x20]
dec ebx
lea eax, [esp + 0x74]
mov dword [esp + 0x10], ebx
call fcn.00411d30
test al, al
jne 0x42b1ae
lea eax, [esp + 0x74]
call fcn.00411d40
mov edi, dword [eax]
lea esi, [esp + 0x74]
call fcn.0040f4a0
cmp dword [esp + 0x20], 0
jl 0x42b44b
cmp ebx, edi
je case.0x40f0cf.8
jmp 0x42b44b
add edi, edi
cmp dl, byte [edi]
add byte [ebx + 0x63], bh
and al, dh
add byte [edx], bh
invalid
add esi, edi
push esp
dec ebp
sti
pop esp
ja 0x42b144
jle 0x42b11f
mov dh, byte [ebx + eax - 0x21]
pcmpeqb mm0, qword [ebp - 5]
pop ds
inc esi
add bh, bl
ud0
mov bl, byte [ebx - 0x214710d5]
ud0
into
jb 0x42b20f
sti
aas
jb 0x42b20b
sti
push ebx
jbe 0x42b1df
sti
pop ds
pop ss
mov esi, 0xe800f19d
push ebp
xor dword [ecx], eax
invalid
push edx
je 0x42b1a7
call 0xfe43ffe9
push edx
je 0x42b1af
call 0xfe43ffa1
add esi, edi
push esp
pop ebp
sti
pop esp
jne 0x42b1b4
jle 0x42b18f
mov dl, byte [esi]
fisttp word [edi]
je 0x42b223
sti
pop ds
add byte [ebp - 5], cl
daa
mov ah, 0x8c
wait
sub edi, dword [ebx - 0x10d47c78]
jmp 0xfe441663
ud0
sub edi, ebx
add byte [ebx + 9], dh
fisttp word [edi]
invalid
add byte [ebx + 0x1e], bh
loope 0x42b201
int1
add byte [ebx + 0x20], ch
add di, bx
movhps xmm7, qword [ecx - 0x22]
ud0
mov bl, byte [ebp - 0x587d66f5]
pop es
or byte [esi], 0x5a
pop ebx
inc byte [ecx]
fild word [ebx - 0x4c0f30db]
and eax, 0x457244fb
sti
push ebx
jbe 0x42b297
sti
pop ds
pop ss
out dx, al
mov ch, 0xf1
add byte [ebp + 0x97b001f], al
fisttp word [edi]
dec dword [esp - 0x20eae9f2]
ud0
jb 0x42b2cb
sti
dec ebx
pop ss
mov byte [0x8500f1b5], al
pop ds
add byte [edx + 0x17], bh
fisttp word [edi]
dec dword [ebx + ebx*4 + 0x7de9bb2b]
add esi, edi
push esp
inc ebx
fist dword [ecx]
xchg esi, eax
xor al, 0xf7
push cs
pop ebx
mov al, dl
jmp dword [eax]
sub edi, dword [ebx + 0x1657de9]
invalid
mov ch, cl
add edi, ebx
invalid
pop ds
invalid
inc dword [ecx]
push esp
dec ebp
sti
pop esp
ja 0x42b2dc
jle 0x42b2b7
mov ch, byte [ecx + eax - 0x21]
invalid
jl 0x42b36b
sti
sbb edi, edi
push cs
pop edx
ret 0x20ff
jb 0x42b37c
fsubrp st(6)
lodsb al, byte [esi]
and eax, esi
je 0x42b34b
invalid
je 0x42b38f
sti
pop ds
mov eax, 0x13162e8
invalid
push esp
pop ebx
fstp xword [0xe8fb4d54]
jns 0x42b355
add esi, edi
pop esp
out 0xed, eax
and byte [edi], 0
lock xchg byte [esi + ecx - 0x462ffe01], bl
outsd dx, dword [esi]
xchg edi, eax
imul ecx, dword [ebp - 1], 0xfffffffe
sti
lcall 0x7d7c, 0xf9db575
jl 0x42b3bf
jl 0x42b3bf
sti
pop ss
dec dword [esi]
pop edx
ljmp 0x2583
mov word [ebx - 0xff000db], es
test byte [0x5cfe0133], al
jae 0x42b334
invalid
sbb eax, 0xce7a00df
jecxz 0x42b351
add byte [ebx + 0x20], ch
imul eax, dword [bx + di], 0x29160fdf
fisttp word [edi]
dec dword [edx + 0x49740b9c]
fild dword [eax]
ud0
mov bl, byte [ebx + ecx + 0xdb4974]
inc eax
push eax
aad 0x5d
xchg ebp, eax
jae 0x42b3b1
sbb edi, edi
add edi, ebx
inc dword [ecx]
fild word [ebp + esi*4 - 0x514f2ffb]
test byte [ebp - 0x514f2ffb], dh
or ecx, dword [ebp - 0x2717729b]
ud0
mov ch, 0xf0
xchg edi, eax
sbb bh, 0xf
jmp [ecx - 0x41]
invalid
cmp byte [ebx + 0x57e7b725], 0x65
and eax, esi
jb 0x42b3ef
sti
aaa
pop ss
sahf
mov ebx, 0x9b8c00f1
sub ecx, dword [ebx + 0x16b49e9]
invalid
mov word [ebx + 0x49e98b2b], ds
imul eax, dword [ecx], 0xfffffffe
push edx
dec ebx
fild dword [ebp + 0x37]
sbb byte [ebx - 0x447ddf01], 0x25
invalid
das
jl 0x42b3f5
fild word [edx - 0x1848da45]
stosd dword es:[edi], eax
and eax, esi
and eax, 0x65abe7b7
and eax, esi
jb 0x42b443
sti
aaa
pop ss
dec edx
mov ebx, 0x9b8c00f1
sub ecx, dword [ebx + 0x16b9de9]
invalid
add byte gs:[ecx + 0x5c], ch
add byte gs:[ecx + 0x4c], ch
ud0
add byte gs:[ebx - 0x59], ch
out 0xbe, al
invalid
xchg ebp, eax
invalid
imul esp, dword [eax], 0x67
push 1
fisttp word [edi]
push ss
sub eax, 0x6b00f020
and byte [edi + 0x5e], ah
imul esp, dword [eax], 0x67
pop esi
add edi, ebx
movhps xmm4, qword [ecx]
and al, dh
add byte [edx + 0xd740b9c], cl
push edi
add byte [eax + 0x50], al
aad 0x5d
xchg edi, eax
sahf
fisttp word [edi]
invalid