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

Disassembly:
push ecx
push ebx
push ebp
push esi
push edi
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x2fd
push 0
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
je 0x4019ed
call dword [sym.imp.USER32.dll_InSendMessage]
test eax, eax
je 0x4019bb
push 0
push 0
push 0x312
push 0
call edi
mov ebp, dword [sym.imp.USER32.dll_CreateWindowExA]
push 0
push 0
push 0x2fd
push 0
call edi
call esi
test eax, eax
je 0x401a1e
call dword [sym.imp.USER32.dll_InSendMessage]
test eax, eax
je 0x401a47
push 0
push 0
push 0x312
push 0
call edi
jmp 0x401a47
push 0
push 0
push 0
push 0
mov ebp, dword [sym.imp.USER32.dll_CreateWindowExA]
push 0x43
push 0xcd
push 0x2fd
push 0x41
push 0x800000
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push 0
call ebp
jmp 0x4019c1
push 0
push 0
push 0
push 0
push 0x43
push 0xcd
push 0x2fd
push 0x41
push 0x800000
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push 0
call ebp
mov ebx, dword [esp + 0x18]
push 0
push 0
push 0x2fd
mov esi, dword [ebx + 0x3c]
push 0
add esi, ebx
call edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x401a80
call dword [sym.imp.USER32.dll_InSendMessage]
test eax, eax
je 0x401aa9
push 0
push 0
push 0x312
push 0
call edi
jmp 0x401aa9
push 0
push 0
push 0
push 0
push 0x43
push 0xcd
push 0x2fd
push 0x41
push 0x800000
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push 0
call ebp
mov esi, dword [esi + 0x78]
push 0
push 0
push 0x2fd
push 0
add esi, ebx
call edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x401ade
call dword [sym.imp.USER32.dll_InSendMessage]
test eax, eax
je 0x401b07
push 0
push 0
push 0x312
push 0
call edi
jmp 0x401b07
push 0
push 0
push 0
push 0
push 0x43
push 0xcd
push 0x2fd
push 0x41
push 0x800000
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push 0
call ebp
mov eax, dword [esi + 0x1c]
mov ebp, dword [esi + 0x20]
add eax, ebx
push 0
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x24]
push 0
add eax, ebx
push 0x2fd
push 0
add ebp, ebx
mov dword [esp + 0x28], eax
call edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x401b4e
call dword [sym.imp.USER32.dll_InSendMessage]
test eax, eax
je 0x401b7b
push 0
push 0
push 0x312
push 0
call edi
jmp 0x401b7b
push 0
push 0
push 0
push 0
push 0x43
push 0xcd
push 0x2fd
push 0x41
push 0x800000
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push str.dSIhr4oEqS4M9lEdmo1puOPhqnDBR6L
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov eax, dword [esi + 0x18]
xor edi, edi
test eax, eax
jbe 0x401bac
mov eax, dword [ebp]
mov ecx, dword [0x404044]
add eax, ebx
push ecx
push eax
call fcn.004018a0
mov ecx, dword [esp + 0x24]
add esp, 8
cmp eax, ecx
je 0x401bb4
mov eax, dword [esi + 0x18]
inc edi
add ebp, 4
cmp edi, eax
jb 0x401b84
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
pop ecx
ret
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
xor edx, edx
mov dx, word [eax + edi*2]
pop edi
pop esi
pop ebp
mov eax, dword [ecx + edx*4]
add eax, ebx
pop ebx
pop ecx
ret