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

Disassembly:
push edi
push esi
push ebx
sub esp, 0x10
mov ebx, eax
mov eax, dword [edx + 0x60]
test eax, 0x40000000
je 0x40eaac
cmp byte [edx + 0x70], 0
je 0x40eaac
mov eax, dword [ebx]
mov esi, dword [edx]
cmp byte [ebx + 0x6c], 0
jne 0x40ea7c
cmp byte [edx + 0x6c], 0
je 0x40ea84
test eax, eax
je 0x40e790
cmp byte [0x4a407c], 4
jne 0x40ea7c
mov dword [eax], esi
nop
mov eax, dword [ebx + 4]
mov esi, dword [edx + 4]
cmp byte [ebx + 0x6d], 0
jne 0x40ea7c
cmp byte [edx + 0x6d], 0
je 0x40eae0
test eax, eax
je 0x40e7c0
cmp byte [0x4a407d], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 8]
mov esi, dword [edx + 8]
cmp byte [ebx + 0x6e], 0
jne 0x40ea7c
cmp byte [edx + 0x6e], 0
je 0x40eb08
test eax, eax
je 0x40e7f0
cmp byte [0x4a407e], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0xc]
mov esi, dword [edx + 0xc]
cmp byte [ebx + 0x6f], 0
jne 0x40ea7c
cmp byte [edx + 0x6f], 0
je 0x40eb30
test eax, eax
je 0x40e820
cmp byte [0x4a407f], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x10]
mov esi, dword [edx + 0x10]
cmp byte [ebx + 0x70], 0
jne 0x40ea7c
cmp byte [edx + 0x70], 0
je 0x40eb58
test eax, eax
je 0x40e850
cmp byte [0x4a4080], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x14]
mov esi, dword [edx + 0x14]
cmp byte [ebx + 0x71], 0
jne 0x40ea7c
cmp byte [edx + 0x71], 0
je 0x40eb80
test eax, eax
je 0x40e880
cmp byte [0x4a4081], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x18]
mov esi, dword [edx + 0x18]
cmp byte [ebx + 0x72], 0
jne 0x40ea7c
cmp byte [edx + 0x72], 0
je 0x40eba8
test eax, eax
je 0x40e8b0
cmp byte [0x4a4082], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x1c]
mov esi, dword [edx + 0x1c]
cmp byte [ebx + 0x73], 0
jne 0x40ea7c
cmp byte [edx + 0x73], 0
je 0x40ebd0
test eax, eax
je 0x40e8e0
cmp byte [0x4a4083], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x20]
mov esi, dword [edx + 0x20]
cmp byte [ebx + 0x74], 0
jne 0x40ea7c
cmp byte [edx + 0x74], 0
je 0x40ebf8
test eax, eax
je 0x40e910
cmp byte [0x4a4084], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x24]
mov esi, dword [edx + 0x24]
cmp byte [ebx + 0x75], 0
jne 0x40ea7c
cmp byte [edx + 0x75], 0
je 0x40ec20
test eax, eax
je 0x40e940
cmp byte [0x4a4085], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x28]
mov esi, dword [edx + 0x28]
cmp byte [ebx + 0x76], 0
jne 0x40ea7c
cmp byte [edx + 0x76], 0
je 0x40ec48
test eax, eax
je 0x40e970
cmp byte [0x4a4086], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x2c]
mov esi, dword [edx + 0x2c]
cmp byte [ebx + 0x77], 0
jne 0x40ea7c
cmp byte [edx + 0x77], 0
je 0x40ec70
test eax, eax
je 0x40e9a0
cmp byte [0x4a4087], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x30]
mov esi, dword [edx + 0x30]
cmp byte [ebx + 0x78], 0
jne 0x40ea7c
cmp byte [edx + 0x78], 0
je 0x40ec98
test eax, eax
je 0x40e9d0
cmp byte [0x4a4088], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x34]
mov esi, dword [edx + 0x34]
cmp byte [ebx + 0x79], 0
jne 0x40ea7c
cmp byte [edx + 0x79], 0
je 0x40ecc0
test eax, eax
je 0x40ea00
cmp byte [0x4a4089], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x38]
mov esi, dword [edx + 0x38]
cmp byte [ebx + 0x7a], 0
jne 0x40ea7c
cmp byte [edx + 0x7a], 0
je 0x40ece8
test eax, eax
je 0x40ea28
cmp byte [0x4a408a], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x3c]
mov esi, dword [edx + 0x3c]
cmp byte [ebx + 0x7b], 0
jne 0x40ea7c
cmp byte [edx + 0x7b], 0
je 0x40ed10
test eax, eax
je 0x40ea50
cmp byte [0x4a408b], 4
jne 0x40ea7c
mov dword [eax], esi
lea esi, [esi]
mov eax, dword [ebx + 0x40]
mov esi, dword [edx + 0x40]
cmp byte [ebx + 0x7c], 0
jne 0x40ea7c
cmp byte [edx + 0x7c], 0
je 0x40ed38
test eax, eax
je 0x40ed4f
cmp byte [0x4a408c], 4
je 0x40ed90
nop
call sym._abort
lea esi, [esi]
test esi, esi
je 0x40e790
test eax, eax
je 0x40e790
cmp esi, eax
je 0x40e790
movzx ecx, byte [0x4a407c]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e790
mov ecx, dword [edx + 0x10]
test ecx, ecx
jne 0x40e764
mov ecx, dword [edx + 0x48]
cmp byte [0x4a4080], 4
jne 0x40ea7c
mov dword [esp + 0xc], ecx
test eax, 0x40000000
je 0x40ead2
mov byte [edx + 0x70], 0
lea eax, [esp + 0xc]
mov dword [edx + 0x10], eax
jmp 0x40e764
test esi, esi
je 0x40e7c0
test eax, eax
je 0x40e7c0
cmp esi, eax
je 0x40e7c0
movzx ecx, byte [0x4a407d]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e7c0
test esi, esi
je 0x40e7f0
test eax, eax
je 0x40e7f0
cmp esi, eax
je 0x40e7f0
movzx ecx, byte [0x4a407e]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e7f0
test esi, esi
je 0x40e820
test eax, eax
je 0x40e820
cmp esi, eax
je 0x40e820
movzx ecx, byte [0x4a407f]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e820
test esi, esi
je 0x40e850
test eax, eax
je 0x40e850
cmp esi, eax
je 0x40e850
movzx ecx, byte [0x4a4080]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e850
test esi, esi
je 0x40e880
test eax, eax
je 0x40e880
cmp esi, eax
je 0x40e880
movzx ecx, byte [0x4a4081]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e880
test esi, esi
je 0x40e8b0
test eax, eax
je 0x40e8b0
cmp esi, eax
je 0x40e8b0
movzx ecx, byte [0x4a4082]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e8b0
test esi, esi
je 0x40e8e0
test eax, eax
je 0x40e8e0
cmp esi, eax
je 0x40e8e0
movzx ecx, byte [0x4a4083]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e8e0
test esi, esi
je 0x40e910
test eax, eax
je 0x40e910
cmp esi, eax
je 0x40e910
movzx ecx, byte [0x4a4084]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e910
test esi, esi
je 0x40e940
test eax, eax
je 0x40e940
cmp esi, eax
je 0x40e940
movzx ecx, byte [0x4a4085]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e940
test esi, esi
je 0x40e970
test eax, eax
je 0x40e970
cmp esi, eax
je 0x40e970
movzx ecx, byte [0x4a4086]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e970
test esi, esi
je 0x40e9a0
test eax, eax
je 0x40e9a0
cmp esi, eax
je 0x40e9a0
movzx ecx, byte [0x4a4087]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e9a0
test esi, esi
je 0x40e9d0
test eax, eax
je 0x40e9d0
cmp esi, eax
je 0x40e9d0
movzx ecx, byte [0x4a4088]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40e9d0
test esi, esi
je 0x40ea00
test eax, eax
je 0x40ea00
cmp esi, eax
je 0x40ea00
movzx ecx, byte [0x4a4089]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40ea00
test esi, esi
je 0x40ea28
test eax, eax
je 0x40ea28
cmp esi, eax
je 0x40ea28
movzx ecx, byte [0x4a408a]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40ea28
test esi, esi
je 0x40ea50
test eax, eax
je 0x40ea50
cmp esi, eax
je 0x40ea50
movzx ecx, byte [0x4a408b]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x40ea50
test esi, esi
je 0x40ed4f
test eax, eax
je 0x40ed4f
cmp esi, eax
je 0x40ed4f
movzx ecx, byte [0x4a408c]
mov edi, eax
rep movsb byte es:[edi], byte [esi]
test byte [ebx + 0x63], 0x40
je 0x40ed64
cmp byte [ebx + 0x70], 0
je 0x40ed64
xor eax, eax
add esp, 0x10
pop ebx
pop esi
pop edi
ret
mov eax, dword [ebx + 0x10]
test eax, eax
jne 0x40ed5b
movzx eax, byte [0x4a4080]
mov ecx, dword [edx + 0x10]
test byte [edx + 0x63], 0x40
je 0x40ed81
cmp byte [edx + 0x70], 0
jne 0x40ed9c
cmp eax, 4
jne 0x40ea7c
mov eax, dword [ecx]
jmp 0x40ed9e
mov dword [eax], esi
test byte [ebx + 0x63], 0x40
je 0x40ed64
jmp 0x40ed55
mov eax, ecx
sub eax, dword [ebx + 0x48]
add eax, dword [edx + 0x68]
add esp, 0x10
pop ebx
pop esi
pop edi
ret