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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
mov esi, dword [ebp + 8]
mov eax, 0xef53
push edi
mov edi, ecx
cmp word [esi + 0x38], ax
jne 0x1004710a
mov eax, dword [esi + 0x18]
mov dword [edi], eax
mov ecx, dword [esi + 0x1c]
mov dword [edi + 4], ecx
test ecx, ecx
je 0x10046ee8
cmp eax, ecx
jne 0x1004710a
cmp eax, 6
ja 0x1004710a
lea ebx, [eax + 0xa]
mov dword [edi], ebx
mov ecx, dword [esi]
mov dword [edi + 8], ecx
mov eax, dword [esi + 4]
and dword [edi + 0x14], 0
mov dword [edi + 0x10], eax
mov eax, dword [esi + 0xc]
and dword [edi + 0x1c], 0
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x10]
mov dword [edi + 0x20], eax
cmp ecx, 2
jb 0x1004710a
cmp ecx, eax
jbe 0x1004710a
xor eax, eax
cmp ebx, 0xa
sete al
cmp dword [esi + 0x14], eax
jne 0x1004710a
mov edx, dword [esi + 0x20]
mov dword [edi + 0x24], edx
mov eax, dword [esi + 0x24]
mov dword [edi + 0x28], eax
cmp edx, eax
jne 0x1004710a
test edx, edx
je 0x1004710a
mov eax, dword [esi + 0x28]
mov dword [edi + 0x2c], eax
cmp eax, 1
jb 0x1004710a
cmp eax, ecx
ja 0x1004710a
mov eax, dword [esi + 0x2c]
mov ecx, 0x80
mov dword [edi + 0x30], eax
mov eax, dword [esi + 0x30]
mov dword [edi + 0x34], eax
mov eax, dword [esi + 0x40]
mov dword [edi + 0x38], eax
mov eax, dword [esi + 0x48]
mov dword [edi + 0x3c], eax
mov eax, dword [esi + 0x4c]
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], 0xb
mov word [edi + 0x48], cx
test eax, eax
je 0x10046fe2
mov edx, dword [esi + 0x54]
mov dword [edi + 0x44], edx
movzx eax, word [esi + 0x58]
mov word [edi + 0x48], ax
mov ecx, eax
cmp edx, 0xb
jb 0x1004710a
xor eax, eax
mov edx, ecx
inc eax
mov ecx, ebx
shl eax, cl
cmp edx, eax
ja 0x1004710a
xor ecx, ecx
xor eax, eax
inc eax
shl eax, cl
cmp eax, edx
je 0x10046fda
inc ecx
cmp ecx, 0x20
jb 0x10046fc8
or ecx, 0xffffffff
test ecx, ecx
js 0x1004710a
mov ax, word [esi + 0x5a]
mov word [edi + 0x4a], ax
mov eax, dword [esi + 0x5c]
mov dword [edi + 0x4c], eax
mov eax, dword [esi + 0x60]
mov dword [edi + 0x50], eax
mov eax, dword [esi + 0x64]
mov dword [edi + 0x54], eax
lea eax, [esi + 0x68]
push 0x10
push eax
lea eax, [edi + 0x58]
push eax
call fcn.100c8430
push 0x10
lea eax, [esi + 0x78]
push eax
lea eax, [edi + 0x68]
push eax
call fcn.100c8430
push 0x40
lea eax, [esi + 0x88]
push eax
lea eax, [edi + 0x78]
push eax
call fcn.100c8430
mov eax, dword [esi + 0xe0]
add esp, 0x24
mov ebx, dword [edi + 0x10]
mov dword [edi + 0xb8], eax
mov ax, word [esi + 0xfe]
mov word [edi + 0xbc], ax
mov eax, dword [esi + 0x108]
mov dword [edi + 0xc0], eax
mov eax, dword [edi + 0x50]
shr eax, 7
test al, 1
je 0x10047074
mov eax, dword [esi + 0x150]
or dword [edi + 0x14], eax
mov eax, dword [esi + 0x158]
or dword [edi + 0x1c], eax
push 0x3f
xor edx, edx
xor ecx, ecx
pop eax
sub eax, dword [edi]
bts edx, eax
cmp eax, 0x20
cmovae ecx, edx
xor edx, ecx
cmp eax, 0x40
cmovae ecx, edx
cmp dword [edi + 0x14], ecx
ja 0x1004710a
jb 0x10047099
cmp ebx, edx
jae 0x1004710a
mov ax, word [esi + 0x15c]
mov word [edi + 0xc4], ax
mov eax, dword [esi + 0x178]
mov dword [edi + 0xc8], eax
mov eax, dword [esi + 0x17c]
mov dword [edi + 0xcc], eax
mov eax, dword [edi + 0x14]
test eax, eax
jne 0x100470cb
cmp ebx, 1
jb 0x1004710a
cmp dword [edi + 0x1c], eax
ja 0x1004710a
jb 0x100470d7
cmp dword [edi + 0x18], ebx
ja 0x1004710a
mov ecx, edi
call fcn.10045dfb
mov ebx, edx
xor ecx, ecx
mov edx, dword [edi + 8]
mov esi, eax
add edx, dword [edi + 0x2c]
push 0
push dword [edi + 0x2c]
adc ecx, ecx
add edx, 0xffffffff
adc ecx, 0xffffffff
push ecx
push edx
call fcn.100c7330
cmp esi, eax
jne 0x1004710a
cmp ebx, edx
jne 0x1004710a
mov al, 1
jmp 0x1004710c
xor al, al
pop edi
pop esi
pop ebx
pop ebp
ret 4