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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
push ebx
push esi
mov esi, dword [0x100cef00]
mov ebx, ecx
push edi
mov dword [ebp - 0x14], esi
cmp byte [esi + 0x61], 0
mov ch, byte [esi + 0xdd9]
mov byte [ebp - 0x10], ch
je 0x1002e861
mov dl, byte [esi + 0xddb]
mov cl, byte [esi + 0xdd8]
jmp 0x1002e86d
mov dl, byte [esi + 0xdd8]
mov cl, byte [esi + 0xdda]
mov edi, dword [esi + 0x47c0]
mov byte [ebp - 1], cl
mov byte [ebp - 8], dl
test edi, edi
je 0x1002eae8
cmp edi, dword [esi + 0x3e40]
jne 0x1002eae8
mov eax, dword [esi + 0x3e44]
test eax, eax
je 0x1002e908
cmp eax, dword [esi + 0x3e40]
jne 0x1002e908
mov edi, dword [edi + 0x300]
test edi, edi
je 0x1002e8e6
cmp byte [edi + 0xab], 0
je 0x1002e8e6
mov eax, dword [eax + 0x300]
cmp edi, eax
je 0x1002e8e0
test dword [edi + 0xc], 0xc000000
je 0x1002e8e0
cmp dword [eax + 0x300], edi
je 0x1002e8e0
nop dword [eax]
cmp eax, edi
je 0x1002e8e0
mov eax, dword [eax + 0x2fc]
test eax, eax
jne 0x1002e8d0
jmp 0x1002e908
mov eax, dword [esi + 0x3e44]
mov edi, dword [esi + 0x3e8c]
test edi, edi
je 0x1002e8fe
cmp byte [esi + 0x3e99], 0
jne 0x1002e8fe
cmp edi, dword [eax + 0x70]
jne 0x1002e908
mov dword [esi + 0x4940], 1
mov edi, dword [ebp - 0x10]
mov word [esi + 0x99], 0x101
mov al, byte [ebx + 0x3d]
mov byte [ebp - 2], al
test al, al
jne 0x1002eb2f
test dl, dl
je 0x1002eaef
test ch, ch
jne 0x1002ebba
test cl, cl
jne 0x1002eda4
mov edx, 0x23b
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002e96e
push ecx
mov ecx, ebx
call fcn.100341d0
jmp 0x1002ea66
mov edx, 0x23a
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ebc2
mov ecx, ebx
mov edx, 1
call fcn.100341b0
test al, al
je 0x1002ea66
nop dword [eax]
mov eax, edx
dec edx
mov dword [ebp - 0x18], edx
test eax, eax
jle 0x1002ea63
mov esi, dword [ebx + 0x34]
lea eax, [esi + 1]
shl esi, 7
mov dword [ebx + 0x34], eax
add esi, dword [ebx + 0x28]
mov dword [ebp - 8], esi
cmp dword [esi + 0x38], 0
je 0x1002e9fb
lea edi, [esi + 0x48]
mov ecx, ebx
push edi
add esi, 0x40
push esi
call fcn.1002cdc0
mov ecx, dword [esi]
mov eax, dword [edi]
sub eax, ecx
inc eax
push eax
lea eax, [ecx - 1]
mov ecx, ebx
push eax
call fcn.100342b0
mov esi, dword [ebp - 8]
cmp dword [esi + 0x10], 0
je 0x1002ea38
cmp dword [esi + 0x14], 0x10
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
mov dword [ebp - 0x28], eax
mov eax, esi
mov dword [ebp - 0x24], ecx
jb 0x1002ea17
mov eax, dword [esi]
push eax
lea eax, [ebp - 0x28]
mov ecx, ebx
push eax
call fcn.1002cf20
mov ecx, dword [esi + 0x18]
mov eax, dword [esi + 0x20]
sub eax, ecx
inc eax
push eax
lea eax, [ecx - 1]
mov ecx, ebx
push eax
call fcn.100342b0
movups xmm0, xmmword [esi + 0x68]
mov ecx, ebx
movups xmmword [ebx + 0x10], xmm0
movq xmm0, qword [esi + 0x78]
movq qword [ebx + 0x20], xmm0
call fcn.10035110
mov ecx, ebx
call fcn.100341b0
mov edx, dword [ebp - 0x18]
test al, al
jne 0x1002e9b0
mov esi, dword [ebp - 0x14]
cmp byte [ebx + 0x3d], 0
jne 0x1002eae8
mov eax, dword [esi + 0x3778]
lea ecx, [esi + 0x3778]
mov dword [ebp - 0x14], ecx
test eax, eax
je 0x1002eae8
xor edi, edi
test eax, eax
jle 0x1002eabf
nop word [eax + eax]
mov eax, dword [esi + 0x3780]
movzx eax, word [eax + edi*2]
test ax, ax
je 0x1002eaba
cmp eax, 0xa
je 0x1002eaa9
cmp eax, 0x20
jb 0x1002eaba
push dword [ebp - 0x10]
mov ecx, ebx
push eax
call fcn.10031620
lea ecx, [esi + 0x3778]
inc edi
cmp edi, dword [ecx]
jl 0x1002ea90
mov esi, dword [ecx + 4]
test esi, esi
jns 0x1002eae2
mov eax, esi
xor ecx, ecx
cdq
sub eax, edx
sar eax, 1
add eax, esi
test eax, eax
cmovg ecx, eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.10036e50
mov ecx, dword [ebp - 0x14]
mov dword [ecx], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test ch, ch
jne 0x1002eb37
test cl, cl
je 0x1002eb3b
mov edx, 0x20b
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ea66
push ecx
mov ecx, ebx
call fcn.100341d0
jmp 0x1002ea66
test dl, dl
jne 0x1002ebba
test cl, cl
jne 0x1002eb78
mov edx, 0x203
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
sub eax, 0xde0
sar eax, 4
push 1
mov ecx, eax
call fcn.1004e030
add esp, 4
test al, al
je 0x1002eb72
push edi
push 1
mov ecx, ebx
call fcn.10032700
jmp 0x1002ea66
mov cl, byte [ebp - 1]
mov dl, byte [ebp - 8]
test dl, dl
jne 0x1002ebba
test cl, cl
jne 0x1002eda8
mov edx, 0x204
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ebc2
push edi
push 1
mov ecx, ebx
call fcn.10032840
jmp 0x1002ea66
test cl, cl
jne 0x1002eda4
mov edx, 0x201
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ebfa
push dword [ebp - 8]
push edi
push ecx
mov ecx, ebx
call fcn.10032990
jmp 0x1002ea66
mov edx, 0x202
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ec32
push dword [ebp - 8]
push edi
push ecx
mov ecx, ebx
call fcn.10032b30
jmp 0x1002ea66
mov edx, 0x205
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002eca3
mov eax, dword [esi + 0x3e40]
push edi
sub esp, 8
movss xmm0, dword [eax + 0x20]
subss xmm0, dword [0x100c7128]
divss xmm0, dword [ebx + 0x21c]
movss dword [ebp - 0x18], xmm0
fld dword [ebp - 0x18]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
fstp dword [ebp - 0x18]
cvttss2si eax, dword [ebp - 0x18]
add esp, 8
mov ecx, ebx
sub eax, 4
push eax
call fcn.10032700
jmp 0x1002ea66
mov edx, 0x206
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ed14
mov eax, dword [esi + 0x3e40]
push edi
sub esp, 8
movss xmm0, dword [eax + 0x20]
subss xmm0, dword [0x100c7128]
divss xmm0, dword [ebx + 0x21c]
movss dword [ebp - 0x18], xmm0
fld dword [ebp - 0x18]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
fstp dword [ebp - 0x18]
cvttss2si eax, dword [ebp - 0x18]
add esp, 8
mov ecx, ebx
sub eax, 4
push eax
call fcn.10032840
jmp 0x1002ea66
mov edx, 0x207
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
sub eax, 0xde0
sar eax, 4
push 1
mov ecx, eax
call fcn.1004e030
add esp, 4
cmp byte [ebp - 8], 0
je 0x1002ed4f
test al, al
je 0x1002edb0
push edi
mov ecx, ebx
call fcn.10032d40
jmp 0x1002ea66
test al, al
je 0x1002ed60
push edi
mov ecx, ebx
call fcn.10032f80
jmp 0x1002ea66
mov al, byte [ebp - 1]
test al, al
jne 0x1002ee6e
mov edx, 0x208
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
sub eax, 0xde0
sar eax, 4
push 1
mov ecx, eax
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ee6b
push edi
mov ecx, ebx
call fcn.100330d0
jmp 0x1002ea66
test dl, dl
jne 0x1002edb6
mov al, byte [ebp - 1]
jmp 0x1002ee71
mov cl, byte [ebp - 1]
mov dl, byte [ebp - 8]
test cl, cl
jne 0x1002edf5
mov edx, 0x208
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
sub eax, 0xde0
sar eax, 4
push 1
mov ecx, eax
call fcn.1004e030
add esp, 4
test al, al
je 0x1002edef
push edi
mov ecx, ebx
call fcn.10032e60
jmp 0x1002ea66
mov cl, byte [ebp - 1]
mov dl, byte [ebp - 8]
test dl, dl
je 0x1002eda8
mov ah, byte [ebp - 0x10]
test ah, ah
jne 0x1002ef37
test cl, cl
jne 0x1002ef37
mov edx, 0x209
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
jne 0x1002ee5f
mov edx, 0x224
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
sub eax, 0xde0
sar eax, 4
push 1
mov ecx, eax
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ef31
mov ecx, ebx
call fcn.10033c20
jmp 0x1002ea66
mov al, byte [ebp - 1]
mov dl, byte [ebp - 8]
cmp byte [ebp - 2], 0
mov ah, byte [ebp - 0x10]
jne 0x1002eef0
test ah, ah
jne 0x1002ef4d
test al, al
jne 0x1002ea66
mov edx, 0x20a
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002eebd
mov ecx, ebx
call fcn.10033220
jmp 0x1002ea66
mov edx, 0x20b
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ef00
mov ecx, ebx
call fcn.10033670
jmp 0x1002ea66
test ah, ah
jne 0x1002f00e
test al, al
jne 0x1002ea66
mov edx, 0x209
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
sub eax, 0xde0
sar eax, 4
push 1
mov ecx, eax
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ef31
xor byte [ebx + 0x3c], 1
jmp 0x1002ea66
mov ah, byte [ebp - 0x10]
mov dl, byte [ebp - 8]
cmp byte [ebp - 2], 0
jne 0x1002efca
test dl, dl
jne 0x1002ef84
test ah, ah
je 0x1002f04c
mov al, byte [ebp - 1]
test al, al
jne 0x1002f04c
mov edx, 0x209
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
jne 0x1002efbe
jmp 0x1002f015
test ah, ah
jne 0x1002f057
mov al, byte [ebp - 1]
test al, al
jne 0x1002f05a
mov edx, 0x237
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002efdd
mov ecx, ebx
call fcn.10033f50
jmp 0x1002ea66
test dl, dl
je 0x1002f00a
test ah, ah
jne 0x1002f057
mov al, byte [ebp - 1]
test al, al
jne 0x1002f05a
mov edx, 0x239
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
sub eax, 0xde0
sar eax, 4
push 1
mov ecx, eax
call fcn.1004e030
add esp, 4
test al, al
jne 0x1002f03d
mov ah, byte [ebp - 0x10]
jmp 0x1002f057
test ah, ah
je 0x1002f04c
mov al, byte [ebp - 1]
test al, al
jne 0x1002f04c
mov edx, 0x20a
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
sub eax, 0xde0
sar eax, 4
push 1
mov ecx, eax
call fcn.1004e030
add esp, 4
test al, al
je 0x1002f049
mov ecx, ebx
call fcn.10033df0
jmp 0x1002ea66
mov dl, byte [ebp - 8]
mov ah, byte [ebp - 0x10]
test dl, dl
je 0x1002f16f
mov al, byte [ebp - 1]
test ah, ah
jne 0x1002f16f
test al, al
jne 0x1002f16f
mov edx, 0x222
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002f16c
mov ecx, dword [ebx + 8]
mov eax, 0x2aaaaaab
sub ecx, dword [ebx + 4]
imul ecx
mov ecx, dword [ebx + 0x10]
sar edx, 1
mov eax, edx
mov dword [ebp - 0x18], ecx
shr eax, 0x1f
mov ecx, ebx
add eax, edx
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], eax
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0x34], eax
mov eax, dword [ebx + 0x18]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x40]
mov dword [ebp - 0xc], 0
push eax
mov dword [ebp - 8], 0
call fcn.1002cbf0
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebx + 0x14], eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x40]
mov dword [ebx + 0x10], ecx
push eax
mov ecx, ebx
call fcn.1002cbf0
mov edi, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebx + 0x18], edi
mov dword [ebx + 0x1c], edx
mov eax, dword [ebx + 0x10]
mov dword [ebp - 8], edi
mov dword [ebp - 0x3c], 0
cmp eax, edi
jne 0x1002f123
cmp dword [ebx + 0x14], edx
setg byte [ebp - 2]
cmp byte [ebp - 2], 0
je 0x1002f148
mov esi, dword [ebp - 8]
mov edi, eax
mov eax, dword [ebx + 0x14]
mov dword [ebx + 0x10], esi
mov dword [ebx + 0x14], edx
mov edx, eax
mov dword [ebx + 0x1c], eax
mov eax, esi
mov esi, dword [ebp - 0x14]
mov dword [ebx + 0x18], edi
cmp eax, dword [ebp - 0x18]
jne 0x1002f163
mov eax, dword [ebp - 0x34]
cmp dword [ebx + 0x14], eax
jne 0x1002f163
cmp edi, dword [ebp - 0x1c]
jne 0x1002f163
cmp edx, dword [ebp - 0x24]
je 0x1002ea66
mov byte [ebx + 0x4c], 1
jmp 0x1002ea66
mov ah, byte [ebp - 0x10]
cmp byte [ebp - 2], 0
jne 0x1002ea66
cmp byte [ebp - 8], 0
jne 0x1002ea66
mov al, byte [ebp - 1]
test ah, ah
jne 0x1002f1c9
test al, al
jne 0x1002ea66
mov edx, 0x20d
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002f1d1
push 0
push 0xa
mov ecx, ebx
call fcn.10031620
jmp 0x1002ea66
test al, al
jne 0x1002ea66
mov edx, 0x200
mov ecx, esi
call fcn.1004dab0
sub eax, esi
xor edx, edx
push 1
lea ecx, [eax - 0xde0]
sar ecx, 4
call fcn.1004e030
add esp, 4
test al, al
je 0x1002ea66
push edi
push 9
mov ecx, ebx
call fcn.10031620
jmp 0x1002ea66