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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
mov esi, ecx
mov eax, dword [edx + 4]
mov ecx, eax
shr ecx, 0xc
and ecx, 0xf
mov dword [esi + 8], ecx
mov edi, 0xffff
mov ecx, eax
and ecx, edi
mov dword [esi + 0xc], ecx
mov ecx, dword [edx + 8]
mov dword [esi + 0x10], ecx
mov ecx, dword [edx + 0x48]
test cl, 0x40
jne 0x40c743
and edi, ecx
jmp 0x40c77b
mov edi, ecx
test cl, 2
jne 0x40c752
and edi, 0xffbf
jmp 0x40c77b
test cl, 1
jne 0x40c764
test cx, cx
js 0x40c76f
and edi, 0xffbd
jmp 0x40c77b
and edi, 0xffbc
or edi, 0x40
jmp 0x40c77b
and edi, 0x7f3d
or edi, 0x80
mov dword [esi + 0x38], edi
sar ecx, 0x10
mov dword [esi + 0x34], ecx
mov ecx, dword [edx + 0x18]
movzx edx, cx
mov dword [esi + 0x2c], edx
sar ecx, 0x10
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x78]
test ecx, ecx
je 0x40c948
mov edx, dword [ecx + 0x60]
mov byte [esi + 0x3c], 0
mov dword [esi + 0x40], 0
movsx edi, ax
cmp edi, 0x3000
jle 0x40c7df
lea edx, [eax - 0x4001]
cmp dx, 7
jbe 0x40c817
lea edx, [eax - 0x3001]
cmp dx, 5
jb case.0x40c7ee.2
add eax, 0xffff9fff
cmp ax, 4
jb case.0x40c7ee.2
jmp 0x40c91d
lea edi, [eax - 0x2001]
cmp di, 9
ja case.default.0x40c7ee
movzx eax, di
jmp dword [eax*4 + 0x4496bc]
cmp dword [ecx], 1
jne 0x40c91d
cmp dword [ecx + 0x20], 5
je 0x40c80e
cmp dword [ecx + 0x24], 5
jne 0x40c91d
mov byte [esi + 0x3c], 1
jmp 0x40c91d
movzx eax, dx
jmp dword [eax*4 + 0x4496e4]
mov byte [esi + 0x3c], 1
mov dword [esi + 0x40], 0
jmp 0x40c91d
lea ecx, [eax - 0x1003]
cmp cx, 2
jae 0x40c875
mov byte [esi + 0x3c], 1
movzx eax, byte [esi + 0x29]
neg eax
jmp case.default.0x40c8b9
cmp dword [ecx], 1
jne 0x40c91d
cmp dword [ecx + 0x20], 5
je 0x40c865
cmp dword [ecx + 0x24], 5
jne 0x40c91d
mov byte [esi + 0x3c], 1
mov dword [esi + 0x40], 1
jmp 0x40c91d
movzx eax, ax
cmp eax, 0x1005
jne 0x40c91d
mov byte [esi + 0x3c], 1
movzx eax, byte [esi + 0x29]
jmp case.default.0x40c8b9
cmp dword [ecx], 1
jne 0x40c91d
cmp dword [ecx + 0x20], 5
je 0x40c8a5
cmp dword [ecx + 0x24], 5
jne 0x40c91d
mov byte [esi + 0x3c], 1
xor eax, eax
cmp dword [edx], 2
jne case.default.0x40c8b9
mov ecx, dword [edx + 4]
dec ecx
cmp ecx, 3
ja case.default.0x40c8b9
jmp dword [ecx*4 + 0x449714]
mov eax, dword [edx + 0x10]
jmp case.default.0x40c8b9
cmp dword [ecx], 1
jne 0x40c91d
cmp dword [ecx + 0x20], 5
je 0x40c8d6
cmp dword [ecx + 0x24], 5
jne 0x40c91d
mov byte [esi + 0x3c], 1
xor eax, eax
cmp dword [edx], 2
jne case.default.0x40c8f2
mov ecx, dword [edx + 4]
dec ecx
cmp ecx, 3
ja case.default.0x40c8f2
jmp dword [ecx*4 + 0x449704]
mov eax, dword [edx + 0x10]
jmp case.default.0x40c8f2
mov byte [esi + 0x3c], 1
cmp dword [ecx], 1
jne 0x40c916
cmp dword [ecx + 0x20], 5
je 0x40c91d
cmp dword [ecx + 0x24], 5
je 0x40c91d
movzx eax, byte [esi + 0x2a]
mov dword [esi + 0x40], eax
lea edi, [esi + 0x68]
push edi
push 0x454055
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x40c944
push edi
push 0x454472
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
jne 0x40c948
mov byte [esi + 0x3c], 1
pop esi
pop edi
pop ebp
ret
movsx eax, byte [edx + 0x10]
jmp case.default.0x40c8b9
movsx eax, word [edx + 0x10]
jmp case.default.0x40c8b9
movsx eax, byte [edx + 0x10]
jmp case.default.0x40c8f2
movsx eax, word [edx + 0x10]
jmp case.default.0x40c8f2