Function at 0x4ba5616d
Capabilities:
Inspect load icon resource

Disassembly:
mov eax, 0x4ba64d5a
call fcn.4ba636c0
sub esp, 0x68
push ebx
push esi
push edi
lea eax, [ebp - 0x14]
xor esi, esi
push eax
mov dword [ebp - 0x14], esi
call fcn.4ba55e1b
test al, al
jne 0x4ba56365
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
push esi
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x48], 1
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x3c], esi
call sub.gdiplus.dll_GdiplusStartup
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], esi
call fcn.4ba5cd03
mov esi, eax
lea edi, [ebp - 0x38]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x38]
mov esi, dword [ebp - 0x2c]
sub esi, dword [ebp - 0x34]
inc eax
mov ebx, 0x2ee
inc esi
cmp eax, ebx
jg 0x4ba561ee
mov ebx, eax
mov edi, 0x258
cmp esi, edi
jg 0x4ba561f9
mov edi, esi
sub eax, ebx
cdq
sub eax, edx
mov ecx, eax
mov eax, esi
sub eax, edi
cdq
sub eax, edx
sar ecx, 1
add ecx, dword [ebp - 0x38]
sar eax, 1
add eax, dword [ebp - 0x34]
mov dword [ebp - 0x28], ecx
add ecx, ebx
mov dword [ebp - 0x24], eax
add eax, edi
mov ebx, 0xc8
push ebx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], eax
call fcn.4ba5cea7
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push eax
push 0
mov edi, 0x80
push edi
push dword [ebp + 8]
mov dword [0x4ba68130], eax
call esi
push 0
push 0x20
push 0x20
push 1
push ebx
call fcn.4ba5cea7
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
push eax
push 1
push edi
push dword [ebp + 8]
call esi
push 0x4ba69af0
lea ecx, [ebp - 0x10]
call fcn.4ba52e3e
xor esi, esi
push 0x4301
lea ecx, [ebp - 0x10]
mov dword [ebp - 4], esi
call fcn.4ba536d5
mov ebx, 0x50100
call fcn.4ba5cbe0
test al, al
je 0x4ba5629c
mov ebx, 0x550100
cmp byte [ebp + 0xc], 0
mov edi, 0x4ba68750
je 0x4ba562ae
mov ecx, edi
call fcn.4ba564fd
push esi
push ecx
mov eax, esp
mov dword [ebp + 0xc], esp
push ebx
push 0x16cf0000
push dword [ebp - 0x10]
mov dword [eax], esi
push ecx
mov eax, esp
lea ecx, [ebp - 0x28]
mov dword [ebp + 0xc], esp
push dword [ebp + 8]
mov dword [eax], ecx
mov ecx, edi
call fcn.4ba5610c
mov eax, dword [0x4ba68754]
push 1
push eax
mov dword [0x4ba68748], eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov ebx, dword [sym.imp.USER32.dll_TranslateMessage]
mov dword [ebp - 0x70], esi
mov ecx, edi
call fcn.4ba5659c
test al, al
lea eax, [ebp - 0x74]
je 0x4ba56318
push 1
push esi
push esi
push esi
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
jne 0x4ba56326
mov ecx, edi
call fcn.4ba56aff
jmp 0x4ba5634a
push esi
push esi
push esi
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
jle 0x4ba5634a
lea eax, [ebp - 0x74]
push eax
push dword [0x4ba68754]
call dword [sym.imp.USER32.dll_IsDialogMessageW]
test eax, eax
jne 0x4ba5634a
lea eax, [ebp - 0x74]
push eax
call ebx
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
cmp dword [ebp - 0x70], 0x12
jne 0x4ba562f1
push dword [ebp - 0x18]
call sub.gdiplus.dll_GdiplusShutdown
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.4ba52c2f
xor esi, esi
cmp dword [ebp - 0x14], esi
je 0x4ba56373
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
xor eax, eax
mov dword fs:[0], ecx
pop ebx
leave
ret 8