Function at 0x4a64e0
Capabilities:
Contain obfuscated stackstrings
Get graphical window text
Hide graphical window

Disassembly:
push ebp
lea ebp, [esp - 0x23c]
sub esp, 0x23c
push 0xffffffffffffffff
push 0x5bdd42
mov eax, dword fs:[0]
push eax
sub esp, 0x238
mov eax, dword [0x61f138]
xor eax, ebp
mov dword [ebp + 0x238], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp + 0x248]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x24c]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1c], 0
call fcn.0049e950
mov dword [ebp - 4], 0
mov dword [ebx], vtable.DialogFileManager.0
mov dword [ebx + 0xb4], 0
mov dword [ebx + 0xb8], 0
mov dword [ebx + 0xbc], 0
mov dword [ebx + 0xc0], 0
mov dword [ebx + 0xc4], 0
mov dword [ebx + 0xc8], 0
mov dword [ebx + 0xcc], 0
mov dword [ebx + 0xd0], 0
mov dword [ebx + 0xd4], 0
mov dword [ebx + 0xd8], 0
mov dword [ebx + 0xdc], 0
mov dword [ebx + 0xe0], 0
mov dword [ebx + 0xe4], 0
mov dword [ebx + 0xe8], 0
mov dword [ebx + 0xec], 0
mov dword [ebx + 0xf0], 0
mov byte [ebp - 4], 5
lea esi, [ebx + 0xf4]
mov dword [ebp - 0x1c], esi
push 8
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
call fcn.0056eed3
mov dword [esi], eax
mov dword [eax], 0
mov dword [eax + 4], 0
mov eax, dword [esi]
mov dword [eax], esi
mov byte [ebp - 4], 6
lea esi, [ebx + 0x108]
mov dword [ebp - 0x1c], esi
push 8
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
call fcn.0056eed3
mov dword [esi], eax
add esp, 8
mov dword [eax], 0
mov dword [eax + 4], 0
mov eax, dword [esi]
mov dword [eax], esi
mov eax, dword [ebp + 0x244]
lea edi, [ebx + 0x68]
mov byte [ebp - 4], 7
mov dword [ebx + 0x188], eax
mov eax, dword [ebp - 0x2c]
mov byte [ebx + 0x124], 0
mov dword [ebx + 0x150], 0
mov dword [ebx + 0x184], 0
mov dword [ebx + 0x19c], 0
mov dword [ebx + 0x1a0], 0
mov byte [ebx + 0x1a4], 1
cmp edi, eax
je 0x4a66ec
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x4a66e1
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
mov ecx, edi
call fcn.00445cb0
push dword [ebp - 0x10]
lea ecx, [ebx + 0x80]
call fcn.00440860
cmp dword [ebx + 0x188], 0
jne 0x4a6863
push 4
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 8
lea ecx, [ebp + 0x20]
push 0xd
xor eax, eax
mov dword [ebp + 0x30], 0
push str.fromInterface
mov dword [ebp + 0x34], 7
mov word [ebp + 0x20], ax
call fcn.00445cb0
mov byte [ebp - 4], 9
lea edx, [ebp + 0x20]
mov ecx, esi
mov dword [ebp - 0x1c], 1
call fcn.004fac70
mov dword [ebp - 4], 7
mov edx, dword [ebp + 0x34]
mov dword [ebx + 0xb4], eax
cmp edx, 8
jb 0x4a6799
mov ecx, dword [ebp + 0x20]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4a678f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a7cf8
push edx
push ecx
call fcn.0056eec5
add esp, 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x1c]
push dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
mov byte [ebp - 0x1d], 0x63
push eax
lea eax, [ebp - 0x1d]
push eax
push 0
call fcn.00465ce0
mov eax, dword [edi + 0x10]
lea ecx, [ebp - 0x18]
push dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 0x14]
call fcn.00465ce0
mov eax, dword [edi + 0x10]
test eax, eax
je 0x4a680b
cmp dword [edi + 0x14], 8
mov ecx, edi
jb 0x4a67f8
mov ecx, dword [edi]
push dword [ebp - 0x28]
lea eax, [ecx + eax*2]
push eax
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x18]
call fcn.00465ce0
lea edx, [ebx + 0x80]
lea ecx, [ebp - 0x18]
call fcn.004623e0
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x18]
sub eax, esi
mov ecx, dword [ebx + 0xb4]
push eax
push esi
call fcn.004faf10
mov byte [ebp - 4], 7
test esi, esi
je 0x4a6863
mov ecx, dword [ebp - 0x10]
mov eax, esi
sub ecx, esi
cmp ecx, 0x1000
jb 0x4a6859
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a7cfd
push ecx
push esi
call fcn.0056eec5
add esp, 8
sub esp, 8
lea ecx, [ebp - 0x244]
call fcn.00442390
sub esp, 8
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x194]
call fcn.00442390
mov edx, str.ToFm
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x234]
call fcn.0044a500
cmp dword [edi + 0x14], 8
mov edx, edi
jb 0x4a68a1
mov edx, dword [edi]
push dword [edi + 0x10]
mov ecx, eax
call fcn.0044d4b0
add esp, 4
lea ecx, [ebp - 0x184]
mov edx, str.FromFm
call fcn.0044a500
cmp dword [edi + 0x14], 8
mov edx, edi
jb 0x4a68c8
mov edx, dword [edi]
push dword [edi + 0x10]
mov ecx, eax
call fcn.0044d4b0
push 4
call fcn.0056eed3
mov esi, eax
add esp, 8
mov dword [ebp - 0x10], esi
lea eax, [ebp + 0x20]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x22c]
call fcn.004466f0
mov byte [ebp - 4], 0xf
lea edx, [ebp + 0x20]
mov ecx, esi
mov dword [ebp - 0x1c], 0x22
call fcn.004fac70
mov dword [ebp - 4], 0xd
mov edx, dword [ebp + 0x34]
mov dword [ebx + 0xac], eax
cmp edx, 8
jb 0x4a6950
mov ecx, dword [ebp + 0x20]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4a6946
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a7d02
push edx
push ecx
call fcn.0056eec5
add esp, 8
push 4
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
lea eax, [ebp + 0x20]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0x17c]
call fcn.004466f0
mov byte [ebp - 4], 0x12
lea edx, [ebp + 0x20]
mov ecx, esi
mov dword [ebp - 0x1c], 0x64
call fcn.004fac70
mov dword [ebp - 4], 0xd
mov edx, dword [ebp + 0x34]
mov dword [ebx + 0xb0], eax
cmp edx, 8
jb 0x4a69ce
mov ecx, dword [ebp + 0x20]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4a69c4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a7d07
push edx
push ecx
call fcn.0056eec5
add esp, 8
sub esp, 8
lea ecx, [ebp - 0xe4]
call fcn.00442390
mov edx, str.toAdmin
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0xd4]
call fcn.0044a500
cmp dword [edi + 0x14], 8
mov edx, edi
jb 0x4a69fa
mov edx, dword [edi]
push dword [edi + 0x10]
mov ecx, eax
call fcn.0044d4b0
push 4
call fcn.0056eed3
mov esi, eax
add esp, 8
mov dword [ebp - 0x10], esi
lea eax, [ebp + 0x20]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0xcc]
call fcn.004466f0
mov byte [ebp - 4], 0x16
lea edx, [ebp + 0x20]
mov ecx, esi
mov dword [ebp - 0x1c], 0xe8
call fcn.004fac70
mov dword [ebp - 4], 0x14
mov edx, dword [ebp + 0x34]
mov dword [ebx + 0xa4], eax
cmp edx, 8
jb 0x4a6a82
mov ecx, dword [ebp + 0x20]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4a6a78
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a7d0c
push edx
push ecx
call fcn.0056eec5
add esp, 8
cmp byte [ebx + 0x98], 0
jne 0x4a6ab9
mov dword [ebp - 0x14], 0
mov byte [ebp - 4], 0x18
mov ecx, dword [ebx + 0xa4]
lea eax, [ebp - 0x14]
push eax
call fcn.004fb050
test al, al
jne 0x4a6a96
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4a6ab9
push eax
call fcn.0056ef26
add esp, 4
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0xd
call fcn.0043ae30
sub esp, 8
lea ecx, [ebp - 0xe4]
call fcn.00442390
mov edx, str.fromAdmin
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xd4]
call fcn.0044a500
cmp dword [edi + 0x14], 8
mov edx, edi
jb 0x4a6af4
mov edx, dword [edi]
push dword [edi + 0x10]
mov ecx, eax
call fcn.0044d4b0
push 4
call fcn.0056eed3
mov esi, eax
add esp, 8
mov dword [ebp - 0x10], esi
lea eax, [ebp + 0x20]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0xcc]
call fcn.004466f0
mov byte [ebp - 4], 0x1b
lea edx, [ebp + 0x20]
mov ecx, esi
mov dword [ebp - 0x1c], 0x1f0
call fcn.004fac70
mov dword [ebp - 4], 0x19
mov edx, dword [ebp + 0x34]
mov dword [ebx + 0xa8], eax
cmp edx, 8
jb 0x4a6b7c
mov ecx, dword [ebp + 0x20]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4a6b72
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a7d11
push edx
push ecx
call fcn.0056eec5
add esp, 8
cmp byte [ebx + 0x98], 0
jne 0x4a6bb3
mov dword [ebp - 0x14], 0
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebx + 0xa8]
lea eax, [ebp - 0x14]
push eax
call fcn.004fb050
test al, al
jne 0x4a6b90
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4a6bb3
push eax
call fcn.0056ef26
add esp, 4
lea ecx, [ebp - 0xe4]
call fcn.0043ae30
mov dword [ebx + 0x120], 1
mov dword [ebx + 0x11c], 1
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x18]
mov edx, 0x5f041c
mov dword [ebp - 0x1c], 0xfffffffe
mov byte [ebp - 0x1d], 0x6c
call fcn.004fbb40
push dword [ebp - 0x28]
mov esi, eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x1d]
mov ecx, esi
push eax
push dword [esi + 4]
call fcn.00465ce0
push dword [ebp - 0x28]
lea eax, [ebp - 0x18]
mov ecx, esi
push eax
lea eax, [ebp - 0x1c]
push eax
push dword [esi + 4]
call fcn.00465ce0
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
sub ecx, eax
push ecx
mov ecx, dword [ebx + 0xb0]
push eax
call fcn.004faf10
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4a6c7c
mov edx, dword [ebp - 0x10]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x4a6c72
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a7d16
push edx
push ecx
call fcn.0056eec5
add esp, 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
mov edx, 0x5f041c
mov dword [ebp - 0x1c], 0xfffffffe
mov byte [ebp - 0x1d], 0x72
call fcn.004fbb40
push dword [ebp - 0x28]
mov esi, eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x1d]
mov ecx, esi
push eax
push dword [esi + 4]
call fcn.00465ce0
push dword [ebp - 0x28]
lea eax, [ebp - 0x18]
mov ecx, esi
push eax
lea eax, [ebp - 0x1c]
push eax
push dword [esi + 4]
call fcn.00465ce0
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
sub ecx, eax
push ecx
mov ecx, dword [ebx + 0xb0]
push eax
call fcn.004faf10
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4a6d26
mov edx, dword [ebp - 0x10]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x4a6d1c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4a7d1b
push edx
push ecx
call fcn.0056eec5
add esp, 8
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
cmp byte [0x6d6404], 0
mov esi, eax
mov dword [ebp - 0x1c], esi
jne 0x4a6f28
mov edx, 0x6c4ea4
jmp 0x4a6d50
mov dword [edx - 4], 0
lea edi, [edx + 0x5a0]
mov dword [edx], 0
xor eax, eax
mov dword [edx + 4], 0x55
mov ecx, 0xff
mov dword [edx + 0x4cc], 0x64
mov dword [edx + 0x4d0], 5
mov dword [edx + 0x4dc], 1
mov dword [edx + 0x4e0], 1
mov dword [edx + 0x4e4], 0x15
mov dword [edx + 0x4f8], 0x15
mov dword [edx + 0x558], 0
mov dword [edx + 0x55c], 0
mov dword [edx + 0x560], 0
mov dword [edx + 0x564], 0
mov dword [edx + 0x53c], 1
mov dword [edx + 0x500], 1
mov dword [edx + 0x4fc], 1
mov dword [edx + 0x59c], 0
mov word [edx + 8], ax
mov eax, 0x32
mov dword [edx + 0x530], 1
mov dword [edx + 0x52c], 1
mov dword [edx + 0x510], 0
mov dword [edx + 0x514], 0xd2d2d2
mov dword [edx + 0x518], 0xffffff
mov dword [edx + 0x520], 0xf6e8cb
mov dword [edx + 0x524], 0xe6e6e6
mov dword [edx + 0x528], 0
mov dword [edx + 0x51c], 0
mov dword [edx + 0x568], 1
mov dword [edx + 0x574], 1
mov dword [edx + 0x578], 0
mov dword [edx + 0x57c], 1
mov dword [edx + 0x580], 0
mov dword [edx + 0x584], 0
mov dword [edx + 0x588], 1
mov dword [edx + 0x598], 0
mov dword [edx + 0x554], 0
add edx, 0x9b0
rep stosd dword es:[edi], eax
cmp edx, 0x6d1064
jl 0x4a6d50
push 0
mov dword [ebp + 0x10], 0xb
mov dword [ebp + 0x14], 0x4bfa80
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 0
mov dword [ebp + 0x20], esi
mov dword [ebp + 0x24], 0
mov dword [ebp + 0x28], 0
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [ebp + 0x2c], eax
lea eax, [ebp + 0x10]
push eax
mov dword [ebp + 0x34], str.BABYGRID
mov dword [ebp + 0x30], 0
call dword [sym.imp.USER32.dll_RegisterClassW]
mov byte [0x6d6404], 1
lea edi, [ebx + 0x68]
mov eax, dword [0x6c4e30]
mov ecx, 1
push 0
push 0
push 0x258
push 0x320
push 0
test eax, eax
push 0
cmove eax, ecx
mov ecx, ebx
push str.fm_title
mov dword [ebx + 0x194], eax
inc eax
push 0
mov dword [ebx + 0x198], eax
inc eax
push esi
push 0xce0000
mov dword [0x6c4e30], eax
call fcn.00528510
call fcn.0051e130
mov dword [ebp - 0x2c], eax
cmp dword [eax + 0x14], 0x10
jb 0x4a6f83
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
call fcn.004387d0
push str.fm_title
push dword [ebp - 0x2c]
mov ecx, eax
call fcn.00519610
cmp dword [edi + 0x14], 8
mov ecx, eax
jb 0x4a6fa1
mov edi, dword [edi]
cmp dword [ebx + 0x94], 8
lea eax, [ebx + 0x80]
jb 0x4a6fb2
mov eax, dword [eax]
push edi
push eax
push ecx
lea eax, [ebp + 0x38]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp + 0x38]
push eax
push dword [ebx + 0x10]
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0
push esi
push dword [ebx + 0x194]
mov edi, dword [sym.imp.USER32.dll_CreateWindowExW]
push dword [ebx + 0x10]
push 0
push 0
push 0
push 0
push 0x50000000
push 0x5e1af8
push str.BABYGRID
push 0x2000200
call edi
push 0
push esi
push dword [ebx + 0x198]
mov dword [ebx + 0x18c], eax
push dword [ebx + 0x10]
push 0
push 0
push 0
push 0
push 0x50000000
push 0x5e1af8
push str.BABYGRID
push 0x2000200
call edi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0x96
push 1
push 0x40b
push dword [ebx + 0x18c]
mov dword [ebx + 0x190], eax
call esi
push 0x32
push 2
push 0x40b
push dword [ebx + 0x18c]
call esi
push 0x78
push 3
push 0x40b
push dword [ebx + 0x18c]
call esi
push 0x32
push 4
push 0x40b
push dword [ebx + 0x18c]
call esi
push 0x96
push 1
push 0x40b
push dword [ebx + 0x190]
call esi
push 0x32
push 2
push 0x40b
push dword [ebx + 0x190]
call esi
push 0x78
push 3
push 0x40b
push dword [ebx + 0x190]
call esi
push 0x32
push 4
push 0x40b
push dword [ebx + 0x190]
call esi
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0
call esi
push 1
mov edi, eax
call esi
mov esi, eax
mov eax, 0x66666667
push 1
lea ecx, [esi*8]
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
mov eax, edi
cdq
sub eax, edx
sar eax, 1
push eax
mov eax, 0x66666667
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
mov eax, edi
cdq
and edx, 3
add eax, edx
sar eax, 2
push eax
push dword [ebx + 0x10]
call dword [sym.imp.USER32.dll_MoveWindow]
push 0xf5f5f5
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
push str.Arial
push 2
push 0
push 0
push 8
push 1
push 0
push 0
push 0
push 0x190
push 0
push 0
push 0
push 0xf
mov dword [ebx + 0x128], eax
call dword [sym.imp.GDI32.dll_CreateFontW]
push 0x44
mov ebx, eax
call fcn.0056eed3
mov esi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x20
push 0
push 0
mov dword [ebp + 0x28], 0
mov dword [ebp + 0x2c], 0
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0
call dword [sym.imp.GDI32.dll_GetStockObject]
mov edi, dword [ebp - 0x24]
mov ecx, esi
push eax
push ebx
lea eax, [ebp + 0x28]
push eax
push 0x5e1a69
push dword [ebp - 0x1c]
push dword [edi + 0x10]
call fcn.0052aae0
mov ecx, eax
mov byte [ebp - 4], 0xd
mov dword [edi + 0x134], ecx
add edi, 0x4c
mov eax, dword [ecx + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
mov dword [ebp - 0x10], ecx
mov ecx, edi
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x44
call fcn.0056eed3
mov esi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x21
push 0
push 0
mov dword [ebp + 0x28], 0
mov dword [ebp + 0x2c], 0
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
push ebx
lea eax, [ebp + 0x28]
mov ecx, esi
push eax
mov eax, dword [ebp - 0x24]
push 0x5e1a69
push dword [ebp - 0x1c]
push dword [eax + 0x10]
call fcn.0052aae0
mov ecx, eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], ecx
mov dword [eax + 0x138], ecx
mov eax, dword [ecx + 8]
mov ecx, edi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x22
lea eax, [ebp + 0x28]
mov dword [ebp + 0x28], 0xa
mov dword [ebp + 0x2c], 0x1e
mov ecx, esi
mov dword [ebp + 0x30], 0x22
push str.fm_btn_copy0
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_copy0
push dword [ebp - 0x1c]
mov dword [ebp + 0x34], 0x22
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x154], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x23
lea eax, [ebp + 0x28]
mov dword [ebp + 0x28], 0xa
mov ecx, esi
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push str.fm_btn_copy1
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_copy1
push dword [ebp - 0x1c]
mov dword [ebp + 0x34], 0x22
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x158], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x24
lea eax, [ebp + 0x28]
mov dword [ebp + 0x28], 0xa
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push str.fm_btn_refresh
push ebx
push eax
push str.fm_btn_refresh0
push dword [ebp - 0x1c]
mov dword [ebp + 0x34], 0x22
mov eax, dword [ebp - 0x24]
mov ecx, esi
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x15c], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x25
lea eax, [ebp + 0x28]
mov dword [ebp + 0x28], 0xa
mov ecx, esi
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push str.fm_btn_refresh
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_refresh1
push dword [ebp - 0x1c]
mov dword [ebp + 0x34], 0x22
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x160], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x26
mov dword [ebp + 0x28], 0xa
lea eax, [ebp + 0x28]
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push str.fm_btn_new
mov dword [ebp + 0x34], 0x22
push ebx
push eax
mov eax, dword [ebp - 0x24]
mov ecx, esi
push str.fm_btn_new0
push dword [ebp - 0x1c]
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x164], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x27
lea eax, [ebp + 0x28]
mov dword [ebp + 0x28], 0xa
mov ecx, esi
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push str.fm_btn_new
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_new1
push dword [ebp - 0x1c]
mov dword [ebp + 0x34], 0x22
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x168], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x28
push 0x50010000
mov dword [ebp + 0x28], 0xa
sub esp, 8
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
mov dword [ebp + 0x34], 0x22
push str.fm_btn_rename
push ebx
lea eax, [ebp + 0x28]
mov ecx, esi
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_rename0
push dword [ebp - 0x1c]
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x16c], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x29
lea eax, [ebp + 0x28]
mov dword [ebp + 0x28], 0xa
mov ecx, esi
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push str.fm_btn_rename
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_rename1
push dword [ebp - 0x1c]
mov dword [ebp + 0x34], 0x22
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x170], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x2a
mov dword [ebp + 0x28], 0xa
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push 0x50010000
sub esp, 8
mov dword [ebp + 0x34], 0x22
lea eax, [ebp + 0x28]
mov ecx, esi
push str.fm_btn_delete
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_delete0
push dword [ebp - 0x1c]
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x174], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x2b
lea eax, [ebp + 0x28]
mov dword [ebp + 0x28], 0xa
mov ecx, esi
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push str.fm_btn_delete
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_delete1
push dword [ebp - 0x1c]
mov dword [ebp + 0x34], 0x22
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x178], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x2c
push 0x50010000
sub esp, 8
mov dword [ebp + 0x28], 0xa
lea eax, [ebp + 0x28]
mov dword [ebp + 0x2c], 0x1e
mov ecx, esi
mov dword [ebp + 0x30], 0x22
mov dword [ebp + 0x34], 0x22
push str.fm_btn_home_folder
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_home_folder0
push dword [ebp - 0x1c]
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x17c], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
push 0x50010000
sub esp, 8
mov byte [ebp - 4], 0x2d
lea eax, [ebp + 0x28]
mov dword [ebp + 0x28], 0xa
mov ecx, esi
mov dword [ebp + 0x2c], 0x1e
mov dword [ebp + 0x30], 0x22
push str.fm_btn_home_folder
push ebx
push eax
mov eax, dword [ebp - 0x24]
push str.fm_btn_home_folder1
push dword [ebp - 0x1c]
mov dword [ebp + 0x34], 0x22
push dword [eax + 0x10]
call fcn.0052ac10
mov byte [ebp - 4], 0xd
mov ecx, edi
mov eax, dword [ebp - 0x24]
mov dword [esi], vtable.Button.0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x180], esi
mov eax, dword [esi + 8]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x44
call fcn.0056eed3
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0x2e
lea ecx, [ebp + 0x28]
mov esi, dword [ebp - 0x24]
push 0
mov dword [ebp + 0x28], 0
mov dword [ebp + 0x2c], 0
push dword [esi + 0x128]
mov dword [ebp + 0x30], 0
push ebx
push ecx
push 0x5e1a69
push dword [ebp - 0x1c]
mov ecx, eax
mov dword [ebp + 0x34], 0
push dword [esi + 0x10]
call fcn.0052aae0
mov ecx, eax
mov byte [ebp - 4], 0xd
mov dword [esi + 0x12c], ecx
mov dword [ebp - 0x10], ecx
mov eax, dword [ecx + 8]
mov ecx, edi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x44
call fcn.0056eed3
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0x2f
lea ecx, [ebp + 0x28]
push 0
push dword [esi + 0x128]
mov dword [ebp + 0x28], 0
push ebx
push ecx
push 0x5e1a69
push dword [ebp - 0x1c]
mov ecx, eax
mov dword [ebp + 0x2c], 0
push dword [esi + 0x10]
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0
call fcn.0052aae0
mov ecx, eax
mov byte [ebp - 4], 0xd
mov dword [esi + 0x130], ecx
mov dword [ebp - 0x10], ecx
mov eax, dword [ecx + 8]
mov ecx, edi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x44
call fcn.0056eed3
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0x30
mov dword [ebp + 0x28], 0
mov dword [ebp + 0x2c], 0
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0
push 0
push dword [esi + 0x128]
lea ecx, [ebp + 0x28]
push ebx
push ecx
push 0x5e1a69
push dword [ebp - 0x1c]
mov ecx, eax
push dword [esi + 0x10]
call fcn.0052aae0
mov ecx, eax
mov byte [ebp - 4], 0xd
mov dword [esi + 0x13c], ecx
mov dword [ebp - 0x10], ecx
mov eax, dword [ecx + 8]
mov ecx, edi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x44
call fcn.0056eed3
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0x31
lea ecx, [ebp + 0x28]
push 0
push dword [esi + 0x128]
mov dword [ebp + 0x28], 0
push ebx
push ecx
push 0x5e1a69
push dword [ebp - 0x1c]
mov ecx, eax
mov dword [ebp + 0x2c], 0
push dword [esi + 0x10]
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0
call fcn.0052aae0
mov ecx, eax
mov byte [ebp - 4], 0xd
mov dword [esi + 0x140], ecx
mov dword [ebp - 0x10], ecx
mov eax, dword [ecx + 8]
mov ecx, edi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
push 0x40
call fcn.0056eed3
mov dword [ebp - 0x10], eax
push ecx
mov byte [ebp - 4], 0x32
lea ecx, [ebp + 0x28]
push dword [esi + 0x128]
mov dword [ebp + 0x28], 0
push ebx
push ecx
push str.fm_btn_stop
push dword [ebp - 0x1c]
mov dword [ebp + 0x2c], 0
push dword [esi + 0x10]
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0
mov ecx, eax
call fcn.0052ab90
mov ecx, eax
mov byte [ebp - 4], 0xd
mov dword [esi + 0x150], ecx
mov dword [ebp - 0x10], ecx
mov eax, dword [ecx + 8]
mov ecx, edi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
mov eax, dword [esi + 0x150]
push 0
push dword [eax + 8]
call dword [sym.imp.USER32.dll_EnableWindow]
push 0x44
call fcn.0056eed3
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0x33
lea ecx, [ebp + 0x28]
push 0x80
push dword [esi + 0x128]
mov dword [ebp + 0x28], 0
push ebx
mov ebx, dword [ebp - 0x1c]
push ecx
push 0x5e1a69
push ebx
push dword [esi + 0x10]
mov ecx, eax
mov dword [ebp + 0x2c], 0
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0
call fcn.0052aae0
mov ecx, eax
mov byte [ebp - 4], 0xd
mov dword [esi + 0x144], ecx
mov dword [ebp - 0x10], ecx
mov eax, dword [ecx + 8]
mov ecx, edi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0050cf50
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.0052bd40
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 8
push eax
mov dword [ebp - 0x30], 0x20
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
test eax, eax
je 0x4a7ca1
push 0
push ebx
mov edi, dword [sym.imp.USER32.dll_CreateWindowExW]
push 0x3ea
push dword [esi + 0x10]
push 0x14
push 0xfa
push 0x14
push 0x14
push 0x50000000
push 0
push str.msctls_progress32
push 0
call edi
push 0
push ebx
push 0x3ea
mov dword [esi + 0x148], eax
push dword [esi + 0x10]
push 0x14
push 0xfa
push 0x14
push 0x14
push 0x50000000
push 0
push str.msctls_progress32
push 0
call edi
push 0
push dword [esi + 0x148]
mov dword [esi + 0x14c], eax
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
call esi
mov eax, dword [ebp - 0x24]
push 0
push dword [eax + 0x14c]
call esi
mov esi, dword [ebp - 0x24]
lea eax, [ebp]
push eax
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_GetClientRect]
push dword [ebp + 0xc]
mov ecx, esi
push dword [ebp + 8]
call fcn.004aaa20
lea ecx, [ebp - 0x194]
call fcn.0043ae30
lea ecx, [ebp - 0x244]
call fcn.0043ae30
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x238]
xor ecx, ebp
call fcn.0056eeb4
lea esp, [ebp + 0x23c]
pop ebp
ret 0xc
call fcn.00591dc6
call fcn.00591dc6
call fcn.00591dc6
call fcn.00591dc6
call fcn.00591dc6
call fcn.00591dc6
call fcn.00591dc6
call fcn.00591dc6
int3