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

Disassembly:
sub esp, 8
test esi, esi
je 0x10014af8
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0x2c]
push ebx
push ebp
neg ecx
push edi
mov edi, dword [0x1003c2bc]
sbb ecx, ecx
and ecx, 8
push ecx
push 0x96
push esi
call edi
mov edx, dword [0x10047938]
mov eax, dword [edx + 0x3c]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x97
push esi
call edi
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0x30]
neg edx
sbb edx, edx
and edx, 8
push edx
push 0x99
push esi
call edi
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0x34]
neg ecx
sbb ecx, ecx
and ecx, 8
push ecx
push 0x9a
push esi
call edi
mov edx, dword [0x10047938]
mov eax, dword [edx + 0x20]
neg eax
sbb eax, eax
and eax, 0xfffffff8
add eax, 8
push eax
push 0xd2
push esi
call edi
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0xcc]
neg edx
sbb edx, edx
and edx, 8
push edx
push 0xe1
push esi
call edi
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0xd0]
neg ecx
sbb ecx, ecx
and ecx, 8
push ecx
push 0xe2
push esi
call edi
mov edx, dword [0x10047938]
mov eax, dword [edx + 0xd8]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x10e
push esi
call edi
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0xd8]
neg edx
sbb edx, edx
mov ebx, dword [0x1003c308]
and edx, 0xfffffffd
add edx, 3
push edx
push 0x10f
push esi
call ebx
mov eax, dword [0x10047938]
mov ecx, dword [eax + 8]
neg ecx
sbb ecx, ecx
and ecx, 8
push ecx
push 0xe3
push esi
call edi
mov edx, dword [0x10047938]
mov eax, dword [edx + 0xf4]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0xe4
push esi
call edi
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0xf8]
and edx, 1
add edx, edx
add edx, edx
add edx, edx
push edx
push 0x168
push esi
call edi
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0xf8]
and ecx, 2
add ecx, ecx
add ecx, ecx
push ecx
push 0x169
push esi
call edi
mov edx, dword [0x10047938]
mov eax, dword [edx + 0xf8]
and eax, 4
add eax, eax
push eax
push 0x16a
push esi
call edi
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0xf8]
and edx, 8
push edx
push 0x16b
push esi
call edi
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0xf8]
shr ecx, 1
and ecx, 8
push ecx
push 0x16c
push esi
call edi
mov edx, dword [0x10047938]
mov eax, dword [edx + 0xf8]
shr eax, 2
and eax, 8
push eax
push 0x16d
push esi
call edi
mov edx, dword [0x10047938]
xor ecx, ecx
cmp dword [edx + 0xf8], 3
setne cl
dec ecx
and ecx, 8
push ecx
push 0x172
push esi
call edi
mov ecx, dword [0x10047938]
xor eax, eax
cmp dword [ecx + 0xf8], 7
setne al
dec eax
and eax, 8
push eax
push 0x173
push esi
call edi
mov eax, dword [0x10047938]
xor edx, edx
cmp dword [eax + 0xf8], 9
setne dl
dec edx
and edx, 8
push edx
push 0x174
push esi
call edi
mov edx, dword [0x10047938]
xor ecx, ecx
cmp dword [edx + 0xf8], 0x11
setne cl
dec ecx
and ecx, 8
push ecx
push 0x175
push esi
call edi
mov ecx, dword [0x10047938]
xor eax, eax
cmp dword [ecx + 0xf8], 0x21
setne al
dec eax
and eax, 8
push eax
push 0x176
push esi
call edi
mov edx, dword [esp + 0x18]
movzx eax, byte [edx + 0x10]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x98
push esi
call edi
mov ecx, dword [0x10047938]
mov ebp, dword [ecx + 0x20]
neg ebp
sbb ebp, ebp
and ebp, 0xfffffffd
add ebp, 3
mov dword [esp + 0xc], 0
lea ebx, [ebx]
mov edx, dword [esp + 0xc]
push ebp
add edx, 0xc8
push edx
push esi
call ebx
mov eax, dword [esp + 0xc]
inc eax
mov dword [esp + 0xc], eax
cmp eax, 9
jb 0x10014540
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
push ebp
add eax, 0xf9
push eax
push esi
call ebx
mov eax, dword [esp + 0xc]
inc eax
mov dword [esp + 0xc], eax
cmp eax, 0xf
jb 0x10014565
push ebp
push 0x108
push esi
call ebx
push ebp
push 0x109
push esi
call ebx
mov edx, dword [0x10047938]
xor ecx, ecx
jmp 0x100145a0
fld dword [ecx*4 + 0x100447c8]
fcomp dword [edx + 0x1c]
fnstsw ax
test ah, 0x44
jnp 0x100145b7
inc ecx
cmp ecx, 9
jb 0x100145a0
mov ebp, dword [0x1003c2c0]
push 0
add ecx, 0xc8
push ecx
push 0xd0
push 0xc8
push esi
call ebp
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0x70]
neg edx
sbb edx, edx
and edx, 8
push edx
push 0x133
push esi
call edi
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0xb4]
neg ecx
sbb ecx, ecx
and ecx, 8
push ecx
push 0xe0
push esi
call edi
mov edx, dword [0x10047938]
mov eax, dword [edx + 0xb0]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0xdf
push esi
call edi
mov edx, dword [0x10047938]
xor ecx, ecx
cmp dword [edx + 0xbc], ecx
push 0
setne cl
add ecx, 0x262
push ecx
push 0x263
push 0x262
push esi
call ebp
mov ecx, dword [0x10047938]
xor eax, eax
cmp dword [ecx + 0xc0], eax
push 0
setne al
add eax, 0x264
push eax
push 0x265
push 0x264
push esi
call ebp
mov edx, dword [0x10047938]
mov eax, dword [edx + 0xc8]
push 0
add eax, 0x1b3
push eax
push 0x1b6
push 0x1b3
push esi
call ebp
mov ecx, dword [esp + 0x1c]
push ecx
call dword [0x1003c334]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x1b8
push esi
call edi
mov edx, dword [esp + 0x18]
movzx eax, byte [edx + 0x18]
neg eax
sbb eax, eax
and eax, 3
push eax
push 0x1b8
push esi
call ebx
mov ecx, dword [0x10047938]
mov ecx, dword [ecx + 0x24]
xor eax, eax
nop
cmp ecx, dword [eax*4 + 0x100447ec]
je 0x100146df
inc eax
cmp eax, 7
jb 0x100146d0
push 0
add eax, 0x12c
push eax
push 0x132
push 0x12c
push esi
call ebp
mov edx, dword [0x10047938]
xor ecx, ecx
lea esp, [esp]
fld dword [ecx*4 + 0x10044848]
fcomp dword [edx + 0x5c]
fnstsw ax
test ah, 0x44
jnp 0x1001476f
fld dword [ecx*4 + 0x1004484c]
fcomp dword [edx + 0x5c]
fnstsw ax
test ah, 0x44
jnp 0x1001475f
fld dword [ecx*4 + 0x10044850]
fcomp dword [edx + 0x5c]
fnstsw ax
test ah, 0x44
jnp 0x10014762
fld dword [ecx*4 + 0x10044854]
fcomp dword [edx + 0x5c]
fnstsw ax
test ah, 0x44
jnp 0x10014767
fld dword [ecx*4 + 0x10044858]
fcomp dword [edx + 0x5c]
fnstsw ax
test ah, 0x44
jnp 0x1001476c
add ecx, 5
cmp ecx, 0xf
jb 0x10014700
jmp 0x1001476f
inc ecx
jmp 0x1001476f
add ecx, 2
jmp 0x1001476f
add ecx, 3
jmp 0x1001476f
add ecx, 4
push 0
add ecx, 0xf9
push ecx
push 0x107
push 0xf9
push esi
call ebp
mov eax, dword [0x10047938]
xor edx, edx
cmp dword [eax + 0x58], edx
push 0
setne dl
add edx, 0x108
push edx
push 0x109
push 0x108
push esi
call ebp
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0x28]
push 0
add edx, 0x15e
push edx
push 0x161
push 0x15e
push esi
call ebp
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax + 0x18]
neg ecx
sbb ecx, ecx
and ecx, 8
push ecx
push 0xa4
push esi
call edi
mov eax, dword [0x10047938]
xor edx, edx
cmp dword [eax + 0x38], 1
push 0
sete dl
add edx, 0xb9
push edx
push 0xba
push 0xb9
push esi
call ebp
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0x68]
push 0
add edx, 0x258
push edx
push 0x25d
push 0x258
push esi
call ebp
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0x68]
push 0
add ecx, 0x2b7
push ecx
push 0x321
push 0x2bd
push esi
call ebp
mov eax, dword [0x10047944]
mov edx, dword [0x10047938]
mov eax, dword [eax + 4]
add edx, 0x714
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], 0
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x100148e4
or eax, 0xffffffff
push 0
add eax, 0x336
push eax
push 0x340
push 0x336
push esi
call ebp
mov edx, dword [0x10047938]
xor ecx, ecx
cmp dword [edx + 0x40], ecx
setge cl
dec ecx
and ecx, 8
push ecx
push 0x1a0
push esi
call edi
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0x40]
test ecx, ecx
jl 0x10014926
xor eax, eax
lea ecx, [ecx]
cmp ecx, dword [eax*4 + 0x10044808]
je 0x10014929
cmp ecx, dword [eax*4 + 0x1004480c]
je 0x10014919
cmp ecx, dword [eax*4 + 0x10044810]
je 0x1001491c
cmp ecx, dword [eax*4 + 0x10044814]
je 0x10014921
add eax, 4
cmp eax, 0x10
jb 0x100148b0
jmp 0x10014929
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
mov edx, dword [eax + 4]
push ecx
push edx
call fcn.1002e12b
add esp, 8
test eax, eax
je 0x10014910
mov eax, dword [esp + 0x1c]
mov eax, dword [eax]
inc dword [esp + 0xc]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x100148e0
jmp 0x1001486c
mov eax, dword [esp + 0xc]
jmp 0x1001486f
inc eax
jmp 0x10014929
add eax, 2
jmp 0x10014929
add eax, 3
jmp 0x10014929
or eax, 0xffffffff
push 0
add eax, 0x190
push eax
push 0x19f
push 0x190
push esi
call ebp
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0x54]
neg edx
sbb edx, edx
and edx, 8
push edx
push 0x1a1
push esi
call edi
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0x48]
push 0
add ecx, 0xa0
push ecx
push 0xa3
push 0xa0
push esi
call ebp
call dword [0x1003c064]
push eax
call dword [0x1003c0bc]
cmp eax, 0x20
jne 0x1001498b
xor eax, eax
jmp 0x100149c2
cmp eax, 0x8000
jne 0x10014999
mov eax, 1
jmp 0x100149c2
cmp eax, 0x4000
jne 0x100149a7
mov eax, 2
jmp 0x100149c2
cmp eax, 0x80
jne 0x100149b5
mov eax, 3
jmp 0x100149c2
sub eax, 0x40
neg eax
sbb eax, eax
and eax, 0xfffffffb
add eax, 4
push 0
add eax, 0xaa
push eax
push 0xae
push 0xaa
push esi
call ebp
mov edx, dword [0x10047938]
mov eax, dword [edx + 0x78]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0xa5
push esi
call edi
mov ecx, dword [0x10047938]
mov edx, dword [ecx + 0xb8]
neg edx
sbb edx, edx
and edx, 8
push edx
push 0x1ae
push esi
call edi
mov eax, dword [0x10047938]
mov ecx, dword [eax + 0xa4]
neg ecx
sbb ecx, ecx
and ecx, 8
push ecx
push 0xa8
push esi
call edi
mov edx, dword [0x10047938]
mov eax, dword [edx + 0xac]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x6f
push esi
call edi
mov ecx, dword [0x10047938]
mov edi, dword [ecx + 0x44]
dec edi
neg edi
sbb edi, edi
and edi, 0xfffffffd
add edi, 3
push edi
push 0x99
push esi
call ebx
push edi
push 0x9a
push esi
call ebx
push edi
push 0xa4
push esi
call ebx
push edi
push 0x9c
push esi
call ebx
mov ebp, dword [esp + 0x18]
movzx edi, byte [ebp + 0x10]
neg edi
sbb edi, edi
and edi, 3
push edi
push 0x96
push esi
call ebx
push edi
push 0x9c
push esi
call ebx
push edi
push 0x1f3
push esi
call ebx
push edi
push 0x3c00
push esi
call ebx
push edi
push 0xd200
push esi
call ebx
push edi
push 0xde00
push esi
call ebx
push edi
push 0xe600
push esi
call ebx
push edi
push 0xf900
push esi
call ebx
push edi
push 0x280
push esi
call ebx
push edi
push 0x285
push esi
call ebx
cmp esi, dword [ebp + 0x104]
jne 0x10014af5
or edi, 0x400
push edi
push 4
push esi
call ebx
pop edi
pop ebp
pop ebx
add esp, 8
ret 8