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

Disassembly:
sub esp, 0x64
mov eax, dword [0x546560]
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov ecx, 0x553dd8
mov dword [esp + 0x48], edi
test ecx, ecx
mov dword [esp + 0x10], eax
je 0x4e7b7d
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
push ecx
call ebx
mov esi, eax
test esi, esi
je 0x4e7b83
push esi
lea ecx, [esp + 0x14]
call fcn.00405530
test eax, eax
je 0x4e7b83
mov edx, dword [esp + 0x10]
inc esi
push esi
push 0x553dd8
push edx
call fcn.00405400
add esp, 0xc
lea ecx, [esp + 0x10]
push 0xffffffffffffffff
call fcn.00405bb0
jmp 0x4e7b83
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [esp + 0x7c]
mov eax, dword [0x546560]
push ecx
lea edx, [esp + 0x50]
push 0x547b34
push edx
mov dword [esp + 0x58], eax
call fcn.00405cb0
mov eax, dword [esp + 0x8c]
add esp, 0xc
lea edx, [esp + 0x4c]
push eax
push ecx
mov ecx, esp
push edx
call fcn.00405440
mov ecx, dword [edi + 0xf0]
lea eax, [esp + 0x4c]
push eax
call fcn.0049c430
mov ecx, dword [esp + 0x10]
mov esi, eax
mov eax, dword [esi]
cmp ecx, eax
je 0x4e7c18
mov edx, dword [ecx - 0xc]
test edx, edx
jge 0x4e7be8
mov edx, dword [0x546564]
add ecx, 0xfffffff4
cmp ecx, edx
jne 0x4e7bef
mov ecx, dword [eax - 0xc]
test ecx, ecx
jge 0x4e7bff
mov ecx, dword [eax - 8]
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.00405870
jmp 0x4e7c18
lea ecx, [esp + 0x10]
call fcn.00412670
mov esi, dword [esi]
mov dword [esp + 0x10], esi
add esi, 0xfffffff4
push esi
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov eax, dword [esp + 0x44]
mov ecx, dword [0x546564]
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x4e7c47
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x4e7c47
mov eax, dword [esp + 0x44]
add eax, 0xfffffff4
push eax
call fcn.00531732
add esp, 4
mov ecx, dword [edi + 0x47c]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x1304
push ecx
call esi
mov edx, dword [edi + 0x47c]
push 0
push 0
mov ebp, eax
push 0x130b
push edx
mov dword [esp + 0x80], ebp
call esi
mov dword [esp + 0x5c], eax
mov eax, dword [0x546560]
mov ecx, 0x54cb8c
mov dword [esp + 0x18], eax
test ecx, ecx
je 0x4e7cc6
push ecx
call ebx
mov esi, eax
test esi, esi
je 0x4e7cc6
push esi
lea ecx, [esp + 0x1c]
call fcn.00405530
test eax, eax
je 0x4e7cc6
mov edx, dword [esp + 0x18]
inc esi
push esi
push 0x54cb8c
push edx
call fcn.00405400
add esp, 0xc
lea ecx, [esp + 0x18]
push 0xffffffffffffffff
call fcn.00405bb0
mov eax, dword [0x55cfd0]
test eax, eax
je 0x4e7d0e
mov eax, 0x546898
test eax, eax
je 0x4e7cdf
push eax
call ebx
mov esi, eax
jmp 0x4e7ce1
xor esi, esi
push esi
lea ecx, [esp + 0x1c]
call fcn.00405660
test eax, eax
je 0x4e7d0e
mov ecx, dword [esp + 0x18]
inc esi
push esi
push 0x546898
push ecx
call fcn.00405400
add esp, 0xc
lea ecx, [esp + 0x18]
push 0xffffffffffffffff
call fcn.00405bb0
xor ebx, ebx
test ebp, ebp
jle 0x4e8428
mov ebp, dword [sym.imp.KERNEL32.dll_lstrlenW]
jmp 0x4e7d24
mov edi, dword [esp + 0x48]
push ebx
lea ecx, [edi + 0x428]
call fcn.004e8460
xor esi, esi
test eax, eax
je 0x4e7d38
mov esi, dword [eax]
mov eax, dword [esp + 0x7c]
mov edx, dword [0x546560]
push ebx
push eax
lea ecx, [esp + 0x1c]
push str._d__d
push ecx
mov dword [esp + 0x24], edx
call fcn.00405cb0
add esp, 0x10
mov ecx, edi
push esi
call fcn.004ef2e0
mov edi, eax
test edi, edi
je 0x4e834c
mov edx, 0x546cdc
test edx, edx
jne 0x4e7d79
xor eax, eax
jmp 0x4e7d80
push 0x546cdc
call ebp
push 0x546cdc
push eax
lea ecx, [esp + 0x18]
call fcn.00405a90
mov eax, dword [esp + 0x48]
cmp dword [eax + 0xf0], edi
je 0x4e83f6
mov ecx, dword [esp + 0x80]
lea edx, [esp + 0x14]
push ecx
push ecx
mov ecx, esp
push edx
call fcn.00405440
lea eax, [esp + 0x24]
mov ecx, edi
push eax
call fcn.0049c430
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx - 8]
test eax, eax
je 0x4e7ff3
cmp dword [esp + 0x5c], ebx
jne 0x4e7f62
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x1c]
push eax
mov edx, dword [eax - 8]
push edx
call fcn.00405a90
mov eax, dword [0x546560]
mov ecx, 0x54ef40
test ecx, ecx
mov dword [esp + 0x20], eax
je 0x4e7e37
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
test esi, esi
je 0x4e7e37
push esi
lea ecx, [esp + 0x24]
call fcn.00405530
test eax, eax
je 0x4e7e37
mov edx, dword [esp + 0x20]
inc esi
push esi
push 0x54ef40
push edx
call fcn.00405400
add esp, 0xc
lea ecx, [esp + 0x20]
push 0xffffffffffffffff
call fcn.00405bb0
mov eax, dword [0x546560]
mov ecx, str.CurSel
test ecx, ecx
mov dword [esp + 0x24], eax
jne 0x4e7e4d
xor eax, eax
jmp 0x4e7e54
push str.CurSel
call ebp
mov ecx, dword [esp + 0x14]
push ecx
mov edx, dword [ecx - 8]
lea ecx, [esp + 0x28]
push edx
push str.CurSel
push eax
call fcn.004059f0
lea eax, [esp + 0x24]
lea ecx, [esp + 0x30]
push eax
call fcn.00405440
lea ecx, [esp + 0x24]
call fcn.00405700
mov ecx, dword [0x546560]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
push eax
mov edx, dword [eax - 8]
mov eax, dword [esp + 0x34]
push edx
push eax
mov eax, dword [eax - 8]
lea ecx, [esp + 0x34]
push eax
call fcn.004059f0
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x30]
call fcn.00405440
lea ecx, [esp + 0x28]
call fcn.00405700
mov eax, dword [esp + 0x2c]
lea ecx, [esp + 0x1c]
push eax
mov edx, dword [eax - 8]
push edx
call fcn.00405a90
mov eax, dword [esp + 0x2c]
mov edx, dword [0x546564]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4e7f04
mov esi, dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
add eax, 0xfffffff4
push eax
call esi
test eax, eax
jg 0x4e7f0a
mov edx, dword [esp + 0x2c]
add edx, 0xfffffff4
push edx
call fcn.00531732
add esp, 4
jmp 0x4e7f0a
mov esi, dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
mov eax, dword [esp + 0x30]
mov edx, dword [0x546564]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4e7f35
add eax, 0xfffffff4
push eax
call esi
test eax, eax
jg 0x4e7f35
mov edx, dword [esp + 0x30]
add edx, 0xfffffff4
push edx
call fcn.00531732
add esp, 4
mov eax, dword [esp + 0x20]
mov edx, dword [0x546564]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4e7f68
add eax, 0xfffffff4
push eax
call esi
test eax, eax
jg 0x4e7f68
mov edx, dword [esp + 0x20]
add edx, 0xfffffff4
push edx
call fcn.00531732
add esp, 4
jmp 0x4e7f68
mov esi, dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
mov eax, dword [0x546560]
mov ecx, 0x546cdc
test ecx, ecx
mov dword [esp + 0x28], eax
jne 0x4e7f7e
xor eax, eax
jmp 0x4e7f85
push 0x546cdc
call ebp
mov ecx, dword [esp + 0x1c]
push ecx
mov edx, dword [ecx - 8]
lea ecx, [esp + 0x2c]
push edx
push 0x546cdc
push eax
call fcn.004059f0
lea eax, [esp + 0x28]
lea ecx, [esp + 0x34]
push eax
call fcn.00405440
lea ecx, [esp + 0x28]
call fcn.00405700
mov eax, dword [esp + 0x34]
push eax
mov ecx, dword [eax - 8]
push ecx
lea ecx, [esp + 0x18]
call fcn.00405a90
mov eax, dword [esp + 0x34]
mov ecx, dword [0x546564]
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x4e7ff9
add eax, 0xfffffff4
push eax
call esi
test eax, eax
jg 0x4e7ff9
mov eax, dword [esp + 0x34]
add eax, 0xfffffff4
push eax
call fcn.00531732
add esp, 4
jmp 0x4e7ff9
mov esi, dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
push ebx
lea ecx, [esp + 0x20]
push str._d_r_n
push ecx
call fcn.00405cb0
mov eax, dword [esp + 0x24]
add esp, 0xc
lea ecx, [esp + 0x10]
mov edx, dword [eax - 8]
push eax
push edx
call fcn.00405a90
mov eax, dword [0x546560]
mov ecx, str.CurPos
test ecx, ecx
mov dword [esp + 0x28], eax
jne 0x4e8034
xor eax, eax
jmp 0x4e803b
push str.CurPos
call ebp
mov ecx, dword [esp + 0x14]
push ecx
mov edx, dword [ecx - 8]
lea ecx, [esp + 0x2c]
push edx
push str.CurPos
push eax
call fcn.004059f0
lea eax, [esp + 0x28]
lea ecx, [esp + 0x3c]
push eax
call fcn.00405440
lea ecx, [esp + 0x28]
call fcn.00405700
mov ecx, dword [0x546560]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
push eax
mov edx, dword [eax - 8]
mov eax, dword [esp + 0x40]
push edx
push eax
mov eax, dword [eax - 8]
lea ecx, [esp + 0x30]
push eax
call fcn.004059f0
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x3c]
call fcn.00405440
lea ecx, [esp + 0x24]
call fcn.00405700
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x10]
push eax
mov edx, dword [eax - 8]
push edx
call fcn.00405a90
mov eax, dword [esp + 0x38]
mov edx, dword [0x546564]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4e80e3
add eax, 0xfffffff4
push eax
call esi
test eax, eax
jg 0x4e80e3
mov edx, dword [esp + 0x38]
add edx, 0xfffffff4
push edx
call fcn.00531732
add esp, 4
mov eax, dword [esp + 0x3c]
mov edx, dword [0x546564]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4e810e
add eax, 0xfffffff4
push eax
call esi
test eax, eax
jg 0x4e810e
mov edx, dword [esp + 0x3c]
add edx, 0xfffffff4
push edx
call fcn.00531732
add esp, 4
mov eax, dword [0x546560]
mov dword [esp + 0x44], eax
mov eax, dword [edi + 0x3c]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [edi + 0x3c]
push eax
mov edx, dword [eax]
call dword [edx + 0x34]
push 0
push 0
mov ecx, edi
call fcn.004a00a0
lea eax, [esp + 0x44]
mov ecx, edi
push eax
call fcn.004ab080
test eax, eax
je 0x4e833a
mov ecx, dword [0x546560]
lea edx, [esp + 0x20]
lea eax, [edi + 0x1d0]
push edx
push eax
mov dword [esp + 0x28], ecx
call fcn.004e3db0
add esp, 8
test eax, eax
je 0x4e8331
mov ecx, dword [0x546560]
mov edx, str.ColsAndSort
test edx, edx
mov dword [esp + 0x28], ecx
jne 0x4e8185
xor eax, eax
jmp 0x4e818c
push str.ColsAndSort
call ebp
mov ecx, dword [esp + 0x14]
push ecx
mov ecx, dword [ecx - 8]
push ecx
push str.ColsAndSort
push eax
lea ecx, [esp + 0x38]
call fcn.004059f0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x40]
push edx
call fcn.00405440
lea ecx, [esp + 0x28]
call fcn.00405700
mov eax, dword [0x546560]
mov ecx, 0x546814
test ecx, ecx
mov dword [esp + 0x24], eax
jne 0x4e81d1
xor eax, eax
jmp 0x4e81d8
push 0x546814
call ebp
push 0x546814
push eax
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x2c]
push eax
mov edx, dword [eax - 8]
push edx
call fcn.004059f0
lea eax, [esp + 0x24]
lea ecx, [esp + 0x58]
push eax
call fcn.00405440
lea ecx, [esp + 0x24]
call fcn.00405700
mov eax, dword [esp + 0x40]
mov edx, dword [0x546564]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4e8232
add eax, 0xfffffff4
push eax
call esi
test eax, eax
jg 0x4e8232
mov edx, dword [esp + 0x40]
add edx, 0xfffffff4
push edx
call fcn.00531732
add esp, 4
mov eax, 0x546cdc
test eax, eax
je 0x4e8242
push 0x546cdc
call ebp
push 0x546cdc
push eax
lea ecx, [esp + 0x18]
call fcn.00405a90
mov ecx, dword [0x546560]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x28], ecx
push eax
mov edx, dword [eax - 8]
mov eax, dword [esp + 0x5c]
push edx
push eax
mov eax, dword [eax - 8]
lea ecx, [esp + 0x34]
push eax
call fcn.004059f0
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x54]
call fcn.00405440
lea ecx, [esp + 0x28]
call fcn.00405700
lea edx, [esp + 0x50]
lea ecx, [esp + 0x10]
push edx
call fcn.00413220
lea ecx, [esp + 0x50]
call fcn.00405700
push 0x546cdc
lea ecx, [esp + 0x14]
call fcn.00429fe0
lea eax, [esp + 0x14]
lea ecx, [esp + 0x54]
push eax
push str.ColsID
push ecx
call fcn.00413060
lea edx, [esp + 0x20]
lea eax, [esp + 0x54]
push edx
push 0x546814
lea ecx, [esp + 0x6c]
push eax
push ecx
call fcn.00412f10
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00412dc0
push eax
lea ecx, [esp + 0x14]
call fcn.00413220
lea ecx, [esp + 0x60]
call fcn.00405700
lea ecx, [esp + 0x64]
call fcn.00405700
push ecx
lea eax, [esp + 0x18]
mov ecx, esp
push eax
call fcn.00405440
lea ecx, [esp + 0x14]
push ecx
mov ecx, edi
call fcn.0049f8c0
lea ecx, [esp + 0x54]
call fcn.00405700
lea ecx, [esp + 0x58]
call fcn.00405700
lea ecx, [esp + 0x20]
call fcn.00405700
lea ecx, [esp + 0x44]
call fcn.00405700
lea ecx, [esp + 0x1c]
jmp 0x4e83f1
mov edx, dword [esp + 0x48]
push ebx
lea ecx, [edx + 0x428]
call fcn.004e8460
test eax, eax
je 0x4e83f6
mov ecx, dword [0x546560]
lea edx, [esp + 0x20]
add eax, 4
push edx
push eax
push ecx
mov dword [esp + 0x2c], ecx
lea eax, [esp + 0x20]
mov ecx, esp
push eax
call fcn.00405440
call fcn.004e6720
add esp, 0xc
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esp + 0x14]
call fcn.00413220
push ebx
lea edx, [esp + 0x24]
push str._d_r_n
push edx
call fcn.00405cb0
add esp, 0xc
lea eax, [esp + 0x20]
lea ecx, [esp + 0x14]
lea edx, [esp + 0x6c]
push eax
push ecx
push str.CurPos
push edx
call fcn.00413060
push eax
lea eax, [esp + 0x70]
push eax
call fcn.00412dc0
push eax
lea ecx, [esp + 0x14]
call fcn.00413220
lea ecx, [esp + 0x68]
call fcn.00405700
lea ecx, [esp + 0x6c]
call fcn.00405700
lea ecx, [esp + 0x20]
call fcn.00405700
push 0x546cdc
lea ecx, [esp + 0x14]
call fcn.00429fe0
push 0x546cdc
lea ecx, [esp + 0x14]
call fcn.00429fe0
lea ecx, [esp + 0x14]
call fcn.00405700
mov eax, dword [esp + 0x70]
inc ebx
cmp ebx, eax
jl 0x4e7d20
mov esi, dword [esp + 0x78]
lea ecx, [esp + 0x10]
push ecx
mov ecx, esi
call fcn.00405440
lea ecx, [esp + 0x18]
call fcn.00405700
lea ecx, [esp + 0x4c]
call fcn.00405700
lea ecx, [esp + 0x10]
call fcn.00405700
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret 0xc