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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x450
mov eax, dword [0x73f3e530]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
mov dword [ebp - 0x41c], 0
push esi
push edi
mov dword [ebp - 0x444], 0
mov edi, dword [ebx + 8]
lea ecx, [ebx + 0x20]
mov dword [ebp - 0x424], ecx
mov eax, dword [edi]
mov esi, dword [eax + 0x10]
lea eax, [ebp - 0x41c]
push eax
push 0
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6cf4c
mov edx, dword [ebp - 0x41c]
test edx, edx
je 0x73e6cf7a
inc dword [ebx + 0x20]
lea ecx, [ebx + 0x20]
mov edi, dword [ebx + 8]
mov dword [ebp - 0x424], ecx
mov eax, dword [edi]
mov esi, dword [eax + 0x10]
lea eax, [ebp - 0x41c]
push eax
push edx
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
jne 0x73e6cf16
cmp dword [ebp - 0x41c], 0
lea edi, [ebx + 0x20]
mov dword [ebp - 0x424], edi
je 0x73e6cf7d
push dword [ebx]
mov ecx, ebx
call fcn.73e728d0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.73ddffa0
mov esp, ebp
pop ebp
ret
lea edi, [ebx + 0x20]
mov eax, dword [edi]
xor ecx, ecx
inc eax
mov edx, 4
mul edx
push 0x73dbf874
seto cl
neg ecx
or ecx, eax
push ecx
mov dword [ebp - 0x418], ecx
call fcn.73de06fd
mov esi, eax
add esp, 8
test esi, esi
je 0x73e6cfbb
push dword [ebp - 0x418]
push 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
add esp, 0xc
mov eax, dword [edi]
xor ecx, ecx
inc eax
mov dword [ebx + 0x10], esi
mov edx, 4
mul edx
push 0x73dbf874
seto cl
neg ecx
or ecx, eax
push ecx
mov dword [ebp - 0x418], ecx
call fcn.73de06fd
mov esi, eax
add esp, 8
test esi, esi
je 0x73e6cffc
push dword [ebp - 0x418]
push 0
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
add esp, 0xc
cmp dword [ebx + 0x10], 0
mov dword [ebx + 0x14], esi
je 0x73e6d798
test esi, esi
je 0x73e6d798
test byte [ebx + 0x24], 0x20
mov dword [ebp - 0x420], 0
je 0x73e6d28d
mov eax, dword [edi]
inc eax
mov dword [ebp - 0x434], eax
cmp eax, 0x20000000
ja 0x73e6d798
mov ecx, dword [ebx + 0x3c]
cmp eax, ecx
jbe 0x73e6d0cc
lea esi, [ecx + ecx*2]
shr esi, 1
cmp eax, esi
jbe 0x73e6d051
mov esi, eax
jmp 0x73e6d05e
cmp esi, 0x20000000
jbe 0x73e6d05e
mov esi, 0x20000000
xor ecx, ecx
mov eax, esi
mov edx, 4
mul edx
push 0x73dbf874
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.73de06fd
mov edx, eax
add esp, 8
mov dword [ebp - 0x418], edx
test edx, edx
je 0x73e6d798
cmp dword [ebx + 0x34], 0
je 0x73e6d0c0
xor ecx, ecx
cmp dword [ebx + 0x38], ecx
jbe 0x73e6d0af
jmp 0x73e6d0a0
mov eax, dword [ebx + 0x34]
mov eax, dword [eax + ecx*4]
mov dword [edx + ecx*4], eax
inc ecx
cmp ecx, dword [ebx + 0x38]
jb 0x73e6d0a0
push dword [ebx + 0x34]
call fcn.73de0647
mov edx, dword [ebp - 0x418]
add esp, 4
mov eax, dword [ebp - 0x434]
mov dword [ebx + 0x34], edx
mov dword [ebx + 0x3c], esi
xor ecx, ecx
mov dword [ebx + 0x38], eax
test eax, eax
jbe 0x73e6d0e5
mov eax, dword [ebx + 0x34]
mov dword [eax + ecx*4], 0
inc ecx
cmp ecx, dword [ebx + 0x38]
jb 0x73e6d0d5
cmp byte [ebx + 0x30], 0
jne 0x73e6d266
mov esi, dword [ebx + 0x18]
mov ecx, esi
push 6
push dword [ebx + 0x1c]
call dword [0x73f59474]
call esi
mov esi, eax
add esp, 8
test esi, esi
je 0x73e6d79f
push 0
push 0
lea eax, [ebp - 0x42c]
mov ecx, esi
push eax
push dword [ebx + 0x1c]
call dword [0x73f59474]
call esi
add esp, 0x10
test eax, eax
je 0x73e6d79f
mov eax, dword [ebp - 0x42c]
test eax, eax
je 0x73e6d262
xor ecx, ecx
mov edx, 4
mul edx
push 0
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.73e6afd0
mov dword [ebp - 0x420], eax
xor ecx, ecx
mov eax, dword [ebp - 0x42c]
mov edx, 4
mul edx
push 0
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.73e6afd0
mov ecx, eax
add esp, 0x10
mov eax, dword [ebp - 0x420]
mov dword [ebp - 0x418], ecx
test eax, eax
je 0x73e6d798
test ecx, ecx
je 0x73e6d798
push ecx
push eax
lea eax, [ebp - 0x450]
mov ecx, esi
push eax
push dword [ebx + 0x1c]
call dword [0x73f59474]
call esi
add esp, 0x10
test eax, eax
je 0x73e6d79f
mov eax, dword [ebp - 0x42c]
cmp eax, dword [ebp - 0x450]
jne 0x73e6d79f
mov dword [ebp - 0x428], 0
test eax, eax
je 0x73e6d248
mov ecx, dword [ebp - 0x420]
mov edx, dword [ebp - 0x418]
sub edx, ecx
mov dword [ebp - 0x434], ecx
mov dword [ebp - 0x440], edx
mov edi, dword [ebx + 4]
push dword [edx + ecx]
push dword [ecx]
mov eax, dword [edi]
mov esi, dword [eax + 0x6c]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d79f
mov eax, dword [ebp - 0x428]
mov ecx, dword [ebp - 0x434]
inc eax
mov edx, dword [ebp - 0x440]
add ecx, 4
mov dword [ebp - 0x428], eax
mov dword [ebp - 0x434], ecx
cmp eax, dword [ebp - 0x42c]
jb 0x73e6d1f7
mov edi, dword [ebp - 0x424]
mov eax, dword [ebp - 0x420]
push eax
call fcn.73de0647
push dword [ebp - 0x418]
call fcn.73de0647
add esp, 8
mov byte [ebx + 0x30], 1
lea esi, [ebx + 0x18]
mov esi, dword [esi]
mov ecx, esi
push 8
push dword [ebx + 0x1c]
call dword [0x73f59474]
call esi
mov edx, eax
add esp, 8
mov dword [ebp - 0x420], edx
test edx, edx
je 0x73e6d79f
mov eax, dword [edi]
xor ecx, ecx
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x418], ecx
test eax, eax
je 0x73e6d4d4
mov edi, dword [ebx + 8]
lea edx, [ebp - 0x41c]
mov dword [ebp - 0x440], 0x104
mov dword [ebp - 0x450], 0x104
push edx
mov eax, dword [edi]
push ecx
mov esi, dword [eax + 0x10]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
mov edi, dword [ebp - 0x41c]
mov eax, dword [edi]
mov esi, dword [eax + 0x38]
lea eax, [ebp - 0x42c]
push eax
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d4a1
mov edi, dword [ebp - 0x41c]
mov eax, dword [edi]
mov esi, dword [eax + 0x7c]
lea eax, [ebp - 0x440]
push eax
lea eax, [ebp - 0x414]
mov ecx, esi
push eax
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d4a1
mov edi, dword [ebp - 0x41c]
mov eax, dword [edi]
mov esi, dword [eax + 0x80]
lea eax, [ebp - 0x450]
push eax
lea eax, [ebp - 0x20c]
mov ecx, esi
push eax
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d4a1
mov edi, dword [ebp - 0x41c]
mov eax, dword [edi]
mov esi, dword [eax + 0x34]
lea eax, [ebp - 0x448]
push eax
lea eax, [ebp - 0x44c]
mov ecx, esi
push eax
lea eax, [ebp - 0x43c]
push eax
lea eax, [ebp - 0x438]
push eax
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d4a1
mov eax, 0xffff
cmp word [ebp - 0x438], ax
jne 0x73e6d3c3
cmp dword [ebp - 0x43c], 0
jne 0x73e6d3c3
cmp dword [ebp - 0x44c], 0xffffffff
jne 0x73e6d3c3
cmp dword [ebp - 0x448], 0
mov byte [ebp - 0x425], 1
je 0x73e6d3ca
mov byte [ebp - 0x425], 0
mov edi, dword [ebx + 0xc]
mov eax, dword [edi]
mov esi, dword [eax + 0x94]
lea eax, [ebp - 0x444]
push eax
lea eax, [ebp - 0x20c]
mov ecx, esi
push eax
lea eax, [ebp - 0x414]
push eax
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d484
cmp byte [ebp - 0x425], 0
jne 0x73e6d43a
push dword [ebp - 0x448]
mov edi, dword [ebp - 0x444]
push dword [ebp - 0x44c]
push dword [ebp - 0x43c]
mov eax, dword [edi]
push dword [ebp - 0x438]
mov esi, dword [eax + 0x18]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d484
movzx edx, word [ebp - 0x42c]
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebp - 0x41c]
mov edi, dword [ebp - 0x424]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebx + 0x14]
movzx edx, word [ebp - 0x42c]
mov eax, dword [ebp - 0x444]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebp - 0x418]
mov eax, dword [edi]
inc ecx
mov dword [ebp - 0x418], ecx
cmp ecx, eax
jae 0x73e6d4d4
mov ecx, dword [ebp - 0x41c]
jmp 0x73e6d2a5
push dword [ebx + 4]
mov ecx, ebx
call fcn.73e728d0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.73ddffa0
mov esp, ebp
pop ebp
ret
push dword [ebx]
mov ecx, ebx
call fcn.73e728d0
mov edi, dword [ebp - 0x41c]
mov eax, dword [edi]
mov esi, dword [eax + 0x40]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.73ddffa0
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp - 0x420]
test esi, esi
je 0x73e6d4f1
push eax
push 0
push dword [ebx + 0x1c]
mov ecx, esi
call dword [0x73f59474]
call esi
add esp, 0xc
test byte [ebx + 0x24], 0x20
mov ecx, dword [edi]
je 0x73e6d563
xor eax, eax
mov dword [ebp - 0x424], eax
cmp ecx, 1
jb 0x73e6d590
mov esi, 4
nop
mov eax, dword [ebx + 0x14]
mov ecx, ebx
push dword [esi + eax]
mov eax, dword [ebx + 0x10]
push dword [eax + esi]
call fcn.73e6d7c0
test eax, eax
je 0x73e6d79f
mov eax, dword [ebp - 0x424]
push dword [edi]
mov ecx, dword [ebp - 0x420]
inc eax
push eax
push dword [ebx + 0x1c]
mov dword [ebp - 0x424], eax
call dword [0x73f59474]
call dword [ebp - 0x420]
mov eax, dword [ebp - 0x424]
add esp, 0xc
inc eax
add esi, 4
cmp eax, dword [edi]
jbe 0x73e6d510
jmp 0x73e6d590
mov esi, 1
cmp ecx, esi
jb 0x73e6d590
lea esp, [esp]
mov eax, dword [ebx + 0x14]
mov ecx, ebx
push dword [eax + esi*4]
mov eax, dword [ebx + 0x10]
push dword [eax + esi*4]
call fcn.73e6d7c0
test eax, eax
je 0x73e6d79f
inc esi
cmp esi, dword [edi]
jbe 0x73e6d570
mov edi, dword [ebx]
mov eax, dword [edi]
mov esi, dword [eax + 0x78]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
mov edi, dword [ebx + 8]
test eax, eax
lea eax, [ebp - 0x430]
push eax
mov esi, dword [edi]
je 0x73e6d5bb
mov esi, dword [esi + 0xf8]
jmp 0x73e6d5be
mov esi, dword [esi + 0x44]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
jne 0x73e6d5f0
push dword [ebx]
mov ecx, ebx
call fcn.73e728d0
xor eax, eax
cmp dword [ebx + 0x28], eax
pop edi
pop esi
sete al
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.73ddffa0
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x430]
mov eax, dword [edi]
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d739
nop
mov edi, dword [ebx]
mov eax, dword [edi]
mov esi, dword [eax + 0x78]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
mov edi, dword [ebp - 0x430]
test eax, eax
lea eax, [ebp - 0x434]
push eax
lea eax, [ebp - 0x424]
mov esi, dword [edi]
push eax
je 0x73e6d66a
mov esi, dword [esi + 0x24]
lea eax, [ebp - 0x440]
push eax
lea eax, [ebp - 0x418]
mov ecx, esi
push eax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x428]
push eax
call dword [0x73f59474]
mov ecx, edi
call esi
jmp 0x73e6d68e
mov esi, dword [esi + 0xc]
lea eax, [ebp - 0x418]
push eax
lea eax, [ebp - 0x420]
mov ecx, esi
push eax
lea eax, [ebp - 0x428]
push eax
call dword [0x73f59474]
mov ecx, edi
call esi
mov eax, dword [ebx + 0x10]
movzx ecx, word [ebp - 0x428]
mov edi, dword [eax + ecx*4]
lea eax, [ebp - 0x448]
push eax
lea eax, [ebp - 0x44c]
push eax
mov esi, dword [edi]
lea eax, [ebp - 0x43c]
push eax
lea eax, [ebp - 0x438]
push eax
mov esi, dword [esi + 0x34]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
mov eax, dword [ebp - 0x420]
mov edx, dword [ebp - 0x418]
cmp ax, word [ebp - 0x438]
jne 0x73e6d6e5
cmp edx, dword [ebp - 0x43c]
je 0x73e6d71a
mov eax, dword [ebx + 0x14]
movzx ecx, word [ebp - 0x428]
push dword [ebp - 0x434]
push dword [ebp - 0x424]
mov edi, dword [eax + ecx*4]
push edx
push dword [ebp - 0x420]
mov eax, dword [edi]
mov esi, dword [eax + 0x18]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
je 0x73e6d765
mov edi, dword [ebp - 0x430]
mov eax, dword [edi]
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
test eax, eax
jne 0x73e6d610
mov edi, dword [ebp - 0x430]
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.73ddffa0
mov esp, ebp
pop ebp
ret
push dword [ebx + 4]
mov ecx, ebx
call fcn.73e728d0
mov edi, dword [ebp - 0x430]
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x73f59474]
mov ecx, edi
call esi
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.73ddffa0
mov esp, ebp
pop ebp
ret
mov dword [ebx + 0x28], 2
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.73ddffa0
mov esp, ebp
pop ebp
ret