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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x1c
mov ecx, dword [edx + 0x60]
test ecx, 0x40000000
je 0x8e45d6
cmp byte [edx + 0x70], 0
jne 0x8e4c20
mov ebx, dword [edx + 0x10]
test ebx, ebx
je 0x8e4c28
mov ebx, dword [eax]
mov esi, dword [edx]
cmp byte [eax + 0x6c], 0
jne 0x8e493b
cmp byte [edx + 0x6c], 0
je 0x8e4940
test ebx, ebx
je 0x8e4940
cmp byte [0xc96fd4], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
nop
mov ebx, dword [eax + 4]
mov esi, dword [edx + 4]
cmp byte [eax + 0x6d], 0
jne 0x8e493b
cmp byte [edx + 0x6d], 0
je 0x8e4968
test ebx, ebx
je 0x8e4968
cmp byte [0xc96fd5], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 8]
mov esi, dword [edx + 8]
cmp byte [eax + 0x6e], 0
jne 0x8e493b
cmp byte [edx + 0x6e], 0
je 0x8e4990
test ebx, ebx
je 0x8e4990
cmp byte [0xc96fd6], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0xc]
mov esi, dword [edx + 0xc]
cmp byte [eax + 0x6f], 0
jne 0x8e493b
cmp byte [edx + 0x6f], 0
je 0x8e49b8
test ebx, ebx
je 0x8e49b8
cmp byte [0xc96fd7], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x10]
mov esi, dword [edx + 0x10]
cmp byte [eax + 0x70], 0
jne 0x8e493b
cmp byte [edx + 0x70], 0
je 0x8e49e0
test ebx, ebx
je 0x8e49e0
cmp byte [0xc96fd8], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x14]
mov esi, dword [edx + 0x14]
cmp byte [eax + 0x71], 0
jne 0x8e493b
cmp byte [edx + 0x71], 0
je 0x8e4a08
test ebx, ebx
je 0x8e4a08
cmp byte [0xc96fd9], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x18]
mov esi, dword [edx + 0x18]
cmp byte [eax + 0x72], 0
jne 0x8e493b
cmp byte [edx + 0x72], 0
je 0x8e4a30
test ebx, ebx
je 0x8e4a30
cmp byte [0xc96fda], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x1c]
mov esi, dword [edx + 0x1c]
cmp byte [eax + 0x73], 0
jne 0x8e493b
cmp byte [edx + 0x73], 0
je 0x8e4a58
test ebx, ebx
je 0x8e4a58
cmp byte [0xc96fdb], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x20]
mov esi, dword [edx + 0x20]
cmp byte [eax + 0x74], 0
jne 0x8e493b
cmp byte [edx + 0x74], 0
je 0x8e4a80
test ebx, ebx
je 0x8e4a80
cmp byte [0xc96fdc], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x24]
mov esi, dword [edx + 0x24]
cmp byte [eax + 0x75], 0
jne 0x8e493b
cmp byte [edx + 0x75], 0
je 0x8e4aa8
test ebx, ebx
je 0x8e4aa8
cmp byte [0xc96fdd], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x28]
mov esi, dword [edx + 0x28]
cmp byte [eax + 0x76], 0
jne 0x8e493b
cmp byte [edx + 0x76], 0
je 0x8e4ad0
test ebx, ebx
je 0x8e4ad0
cmp byte [0xc96fde], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x2c]
mov esi, dword [edx + 0x2c]
cmp byte [eax + 0x77], 0
jne 0x8e493b
cmp byte [edx + 0x77], 0
je 0x8e4af8
test ebx, ebx
je 0x8e4af8
cmp byte [0xc96fdf], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x30]
mov esi, dword [edx + 0x30]
cmp byte [eax + 0x78], 0
jne 0x8e493b
cmp byte [edx + 0x78], 0
je 0x8e4b20
test ebx, ebx
je 0x8e4b20
cmp byte [0xc96fe0], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x34]
mov esi, dword [edx + 0x34]
cmp byte [eax + 0x79], 0
jne 0x8e493b
cmp byte [edx + 0x79], 0
je 0x8e4b48
test ebx, ebx
je 0x8e4b48
cmp byte [0xc96fe1], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x38]
mov esi, dword [edx + 0x38]
cmp byte [eax + 0x7a], 0
jne 0x8e493b
cmp byte [edx + 0x7a], 0
je 0x8e4b70
test ebx, ebx
je 0x8e4b70
cmp byte [0xc96fe2], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x3c]
mov esi, dword [edx + 0x3c]
cmp byte [eax + 0x7b], 0
jne 0x8e493b
cmp byte [edx + 0x7b], 0
je 0x8e4b98
test ebx, ebx
je 0x8e4b98
cmp byte [0xc96fe3], 4
jne 0x8e493b
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
mov ebx, dword [eax + 0x40]
mov esi, dword [edx + 0x40]
cmp byte [eax + 0x7c], 0
jne 0x8e493b
cmp byte [edx + 0x7c], 0
je 0x8e4bc0
test ebx, ebx
je 0x8e4bc0
cmp byte [0xc96fe4], 4
je 0x8e4c54
call sub.msvcrt.dll_abort
test esi, esi
je 0x8e4614
test ebx, ebx
je 0x8e4614
cmp esi, ebx
je 0x8e4614
movzx ecx, byte [0xc96fd4]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e4614
test esi, esi
je 0x8e4648
test ebx, ebx
je 0x8e4648
cmp esi, ebx
je 0x8e4648
movzx ecx, byte [0xc96fd5]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e4648
test esi, esi
je 0x8e467c
test ebx, ebx
je 0x8e467c
cmp esi, ebx
je 0x8e467c
movzx ecx, byte [0xc96fd6]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e467c
test esi, esi
je 0x8e46b0
test ebx, ebx
je 0x8e46b0
cmp esi, ebx
je 0x8e46b0
movzx ecx, byte [0xc96fd7]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e46b0
test esi, esi
je 0x8e46e4
test ebx, ebx
je 0x8e46e4
cmp esi, ebx
je 0x8e46e4
movzx ecx, byte [0xc96fd8]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e46e4
test esi, esi
je 0x8e4718
test ebx, ebx
je 0x8e4718
cmp esi, ebx
je 0x8e4718
movzx ecx, byte [0xc96fd9]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e4718
test esi, esi
je 0x8e474c
test ebx, ebx
je 0x8e474c
cmp esi, ebx
je 0x8e474c
movzx ecx, byte [0xc96fda]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e474c
test esi, esi
je 0x8e4780
test ebx, ebx
je 0x8e4780
cmp esi, ebx
je 0x8e4780
movzx ecx, byte [0xc96fdb]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e4780
test esi, esi
je 0x8e47b4
test ebx, ebx
je 0x8e47b4
cmp esi, ebx
je 0x8e47b4
movzx ecx, byte [0xc96fdc]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e47b4
test esi, esi
je 0x8e47e8
test ebx, ebx
je 0x8e47e8
cmp esi, ebx
je 0x8e47e8
movzx ecx, byte [0xc96fdd]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e47e8
test esi, esi
je 0x8e481c
test ebx, ebx
je 0x8e481c
cmp esi, ebx
je 0x8e481c
movzx ecx, byte [0xc96fde]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e481c
test esi, esi
je 0x8e4850
test ebx, ebx
je 0x8e4850
cmp esi, ebx
je 0x8e4850
movzx ecx, byte [0xc96fdf]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e4850
test esi, esi
je 0x8e4884
test ebx, ebx
je 0x8e4884
cmp esi, ebx
je 0x8e4884
movzx ecx, byte [0xc96fe0]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e4884
test esi, esi
je 0x8e48b8
test ebx, ebx
je 0x8e48b8
cmp esi, ebx
je 0x8e48b8
movzx ecx, byte [0xc96fe1]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e48b8
test esi, esi
je 0x8e48e4
test ebx, ebx
je 0x8e48e4
cmp esi, ebx
je 0x8e48e4
movzx ecx, byte [0xc96fe2]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e48e4
test esi, esi
je 0x8e4910
test ebx, ebx
je 0x8e4910
cmp esi, ebx
je 0x8e4910
movzx ecx, byte [0xc96fe3]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
jmp 0x8e4910
test esi, esi
je 0x8e4bd7
test ebx, ebx
je 0x8e4bd7
cmp esi, ebx
je 0x8e4bd7
movzx ecx, byte [0xc96fe4]
mov edi, ebx
rep movsb byte es:[edi], byte [esi]
test byte [eax + 0x63], 0x40
jne 0x8e4bf0
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x8e4bfd
xor eax, eax
add esp, 0x1c
pop ebx
pop esi
pop edi
leave
ret
cmp byte [eax + 0x70], 0
je 0x8e4bdd
lea ecx, [eax + 0x10]
test ecx, ecx
jne 0x8e4be4
mov cl, byte [0xc96fd8]
mov ebx, dword [edx + 0x10]
test byte [edx + 0x63], 0x40
je 0x8e4c12
cmp byte [edx + 0x70], 0
jne 0x8e4c60
cmp cl, 4
jne 0x8e493b
mov ecx, dword [ebx]
jmp 0x8e4c62
lea ebx, [edx + 0x10]
jmp 0x8e45d9
mov ebx, dword [edx + 0x48]
cmp byte [0xc96fd8], 4
jne 0x8e493b
mov dword [ebp - 0x1c], ebx
and ecx, 0x40000000
je 0x8e4c47
mov byte [edx + 0x70], 0
lea ecx, [ebp - 0x1c]
mov dword [edx + 0x10], ecx
jmp 0x8e45e1
mov dword [ebp - 0x20], esi
mov dword [ebx], esi
jmp 0x8e4bd7
mov ecx, ebx
sub ecx, dword [eax + 0x48]
mov eax, dword [edx + 0x68]
add eax, ecx
add esp, 0x1c
pop ebx
pop esi
pop edi
leave
ret