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

Disassembly:
sub esp, 0x5c
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x64]
push ebx
push ebp
mov eax, dword [eax]
xor ebx, ebx
mov ecx, dword [ecx]
mov ebp, ebx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x78]
push esi
mov esi, dword [esp + 0x74]
mov dword [esp + 0xc], ecx
mov eax, dword [eax]
push edi
mov esi, dword [esi]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x20], eax
mov byte [ecx + eax], bl
mov eax, dword [esp + 0x10]
movsx edi, byte [esi + eax]
test edi, edi
je 0x4239eb
cmp edi, 0x22
je 0x4239cd
cmp edi, 0x27
je 0x4239cd
cmp edi, 0x20
jle 0x4239ca
push edi
call fcn.0041cf0f
test eax, eax
jne 0x4239ca
push edi
call fcn.00405731
test eax, eax
je 0x423885
mov eax, dword [esp + 0x10]
push ebx
push ebx
add eax, esi
push eax
call fcn.0042335e
jmp 0x4239d9
cmp edi, 0x23
jne 0x423891
mov eax, dword [esp + 0x10]
inc eax
jmp 0x423876
push 0x40
lea eax, [esp + 0x30]
push eax
mov eax, dword [esp + 0x18]
add eax, esi
push eax
call fcn.0042335e
mov dword [esp + 0x18], eax
lea eax, [esp + 0x2c]
push 5
push eax
push dword [esp + 0x78]
call fcn.00423c2d
mov edi, eax
test edi, edi
je 0x4239c4
push dword [esp + 0x18]
call fcn.004245f0
mov edx, eax
mov eax, dword [edi + 0x10]
mov dword [esp + 0x28], edx
mov cl, byte [edx]
cmp byte [eax], bl
je 0x4238f9
test cl, cl
je 0x4239e8
cmp cl, 0x28
jne 0x4239c4
push edx
call fcn.004233a0
test eax, eax
je 0x4239e8
push ebp
call fcn.00404070
push 0x3ec
push dword [edi + 0x14]
call fcn.00402bba
mov ebp, eax
mov dword [esp + 0x14], ebp
mov dword [esp + 0x24], ebp
test ebp, ebp
je 0x4239c4
mov eax, dword [edi + 0x10]
cmp byte [eax], bl
je 0x423957
push dword [esp + 0x8c]
push dword [esp + 0x8c]
push dword [esp + 0x8c]
push eax
lea eax, [esp + 0x34]
push eax
push dword [esp + 0x3c]
call fcn.00422e31
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], ebp
jmp 0x42395b
mov eax, dword [esp + 0x18]
mov edi, eax
sub edi, esi
sub edi, dword [esp + 0x10]
push ebp
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [esp + 0x20]
mov ebp, eax
mov eax, ecx
sub eax, edi
add ebp, eax
lea eax, [ebp + 1]
cmp dword [esp + 0x1c], eax
jge 0x4239a2
push 0x3ed
lea eax, [ecx + 1]
push eax
lea eax, [ebp + 0x1000]
push eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x20]
push eax
call fcn.0040695e
test eax, eax
je 0x4239c4
push dword [esp + 0x14]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push dword [esp + 0x18]
mov eax, dword [esp + 0x18]
push edi
add eax, esi
push eax
call fcn.004244b3
mov dword [esp + 0x20], ebp
jmp 0x4239df
mov esi, dword [esp + 0x18]
jmp 0x4239db
inc esi
jmp 0x4239df
mov eax, dword [esp + 0x10]
add eax, esi
push eax
call fcn.0041ec74
mov esi, eax
sub esi, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
jmp 0x42382f
xor ebx, ebx
inc ebx
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x10]
push ebp
mov dword [eax], ecx
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x20]
mov dword [eax], esi
mov eax, dword [esp + 0x80]
mov dword [eax], ecx
mov ecx, dword [esp + 0x84]
mov eax, dword [esp + 0x24]
mov dword [ecx], eax
call fcn.00404070
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x5c
ret 0x20