Function at 0x4107f0
Capabilities:
Create directory
Extract resource via kernel32 functions
Get common file path
Get program files directory
Persist via run registry key
Set current directory
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5308ac
mov eax, dword fs:[0]
push eax
mov eax, 0x104b0
call fcn.00516360
mov eax, dword [0x58c804]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x18], 0
cmp dword [0x5901b8], 0
je 0x41083b
call fcn.0040e960
push 0
push 0x26
lea eax, [ebp - 0x101fc]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
lea ecx, [ebp - 0x101fc]
push ecx
lea ecx, [ebp - 0x10204]
call fcn.00401c80
mov dword [ebp - 4], 0
cmp dword [0x5901b8], 0
je 0x410910
push 0
push str.__x86_
lea ecx, [ebp - 0x10204]
call fcn.00412c80
cmp eax, 0xffffffff
jne 0x410910
mov edx, str.__x86_
test edx, edx
jne 0x4108a4
mov dword [ebp - 0x10278], 0
jmp 0x4108f9
mov dword [ebp - 0x10430], str.__x86_
mov eax, dword [ebp - 0x10430]
add eax, 1
mov dword [ebp - 0x10434], eax
mov ecx, dword [ebp - 0x10430]
mov dl, byte [ecx]
mov byte [ebp - 0x10435], dl
add dword [ebp - 0x10430], 1
cmp byte [ebp - 0x10435], 0
jne 0x4108bd
mov eax, dword [ebp - 0x10430]
sub eax, dword [ebp - 0x10434]
mov dword [ebp - 0x1043c], eax
mov ecx, dword [ebp - 0x1043c]
mov dword [ebp - 0x10278], ecx
mov edx, dword [ebp - 0x10278]
push edx
push str.__x86_
lea ecx, [ebp - 0x10204]
call fcn.00413730
push 0
mov eax, dword [ebp - 0x10204]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
cmp dword [0x58ff30], 0
je 0x410950
mov ecx, dword [0x58ff30]
add ecx, 0x74
mov dword [ebp - 0x1027c], ecx
push 0
push 0xa
push 0x402
mov edx, dword [ebp - 0x1027c]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x85
push ecx
mov ecx, esp
mov dword [ebp - 0x10214], esp
mov dword [ebp - 0x10288], ecx
mov edx, dword [ebp - 0x10204]
sub edx, 0x10
mov dword [ebp - 0x10280], edx
mov eax, dword [ebp - 0x10280]
push eax
call fcn.0040e870
add esp, 4
mov dword [ebp - 0x10284], eax
mov ecx, dword [ebp - 0x10284]
add ecx, 0x10
mov edx, dword [ebp - 0x10288]
mov dword [edx], ecx
mov byte [ebp - 4], 1
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x10288]
mov dword [ebp - 0x10440], eax
mov byte [ebp - 4], 2
mov byte [ebp - 4], 0
call fcn.00410380
add esp, 8
cmp dword [0x58ff30], 0
je 0x4109ee
mov ecx, dword [0x58ff30]
add ecx, 0x74
mov dword [ebp - 0x1028c], ecx
push 0
push 0x14
push 0x402
mov edx, dword [ebp - 0x1028c]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x87
push ecx
mov ecx, esp
mov dword [ebp - 0x10218], esp
mov dword [ebp - 0x10298], ecx
mov edx, dword [ebp - 0x10204]
sub edx, 0x10
mov dword [ebp - 0x10290], edx
mov eax, dword [ebp - 0x10290]
push eax
call fcn.0040e870
add esp, 4
mov dword [ebp - 0x10294], eax
mov ecx, dword [ebp - 0x10294]
add ecx, 0x10
mov edx, dword [ebp - 0x10298]
mov dword [edx], ecx
mov byte [ebp - 4], 3
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x10298]
mov dword [ebp - 0x10444], eax
mov byte [ebp - 4], 4
mov byte [ebp - 4], 0
call fcn.00410380
add esp, 8
cmp dword [0x58ff30], 0
je 0x410a8c
mov ecx, dword [0x58ff30]
add ecx, 0x74
mov dword [ebp - 0x1029c], ecx
push 0
push 0x1e
push 0x402
mov edx, dword [ebp - 0x1029c]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [0x5901b8], 0
je 0x410c02
mov byte [0x5901bd], 1
lea ecx, [ebp - 0x101fc]
test ecx, ecx
jne 0x410ab6
mov dword [ebp - 0x102a0], 0
jmp 0x410b0d
lea edx, [ebp - 0x101fc]
mov dword [ebp - 0x10448], edx
mov eax, dword [ebp - 0x10448]
add eax, 1
mov dword [ebp - 0x1044c], eax
mov ecx, dword [ebp - 0x10448]
mov dl, byte [ecx]
mov byte [ebp - 0x1044d], dl
add dword [ebp - 0x10448], 1
cmp byte [ebp - 0x1044d], 0
jne 0x410ad1
mov eax, dword [ebp - 0x10448]
sub eax, dword [ebp - 0x1044c]
mov dword [ebp - 0x10454], eax
mov ecx, dword [ebp - 0x10454]
mov dword [ebp - 0x102a0], ecx
mov edx, dword [ebp - 0x102a0]
push edx
lea eax, [ebp - 0x101fc]
push eax
lea ecx, [ebp - 0x10204]
call fcn.00402070
push 0x541f7e
push str.__x86_
lea ecx, [ebp - 0x10204]
call fcn.004127e0
push 0x86
push ecx
mov ecx, esp
mov dword [ebp - 0x1021c], esp
mov dword [ebp - 0x102e0], ecx
lea edx, [ebp - 0x10204]
push edx
mov ecx, dword [ebp - 0x102e0]
call fcn.004134d0
mov byte [ebp - 4], 5
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x102e0]
mov dword [ebp - 0x10458], eax
mov byte [ebp - 4], 6
mov byte [ebp - 4], 0
call fcn.00410380
add esp, 8
cmp dword [0x58ff30], 0
je 0x410bb6
mov ecx, dword [0x58ff30]
add ecx, 0x74
mov dword [ebp - 0x102e4], ecx
push 0
push 0x28
push 0x402
mov edx, dword [ebp - 0x102e4]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x88
push ecx
mov ecx, esp
mov dword [ebp - 0x10220], esp
mov dword [ebp - 0x102e8], ecx
lea edx, [ebp - 0x10204]
push edx
mov ecx, dword [ebp - 0x102e8]
call fcn.004134d0
mov byte [ebp - 4], 7
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x102e8]
mov dword [ebp - 0x1045c], eax
mov byte [ebp - 4], 8
mov byte [ebp - 4], 0
call fcn.00410380
add esp, 8
jmp 0x410c09
mov byte [0x5901bd], 1
cmp dword [0x58ff30], 0
je 0x410c3a
mov ecx, dword [0x58ff30]
add ecx, 0x74
mov dword [ebp - 0x102ec], ecx
push 0
push 0x32
push 0x402
mov edx, dword [ebp - 0x102ec]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [0x5901b8], 0
je 0x410c65
movzx ecx, byte [0x5901bd]
test ecx, ecx
jne 0x410c65
push 0x5444d4
push 0x93
push 0
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov dword [ebp - 0x10], eax
jmp 0x410c7a
push 0x5444d4
push 0x8e
push 0
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x10]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp - 0x18], eax
push 0xffdc
push 0
lea eax, [ebp - 0xfffc]
push eax
call fcn.00515e20
add esp, 0xc
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp - 0x10]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_LoadResource]
push eax
lea eax, [ebp - 0xfffc]
push eax
call fcn.00515710
add esp, 0xc
push 0x544268
lea ecx, [ebp - 0x10204]
push ecx
lea edx, [ebp - 0x10224]
push edx
call fcn.0040e490
add esp, 0xc
mov dword [ebp - 0x10460], eax
mov eax, dword [ebp - 0x10460]
mov dword [ebp - 0x10464], eax
mov byte [ebp - 4], 9
push 0x544258
mov ecx, dword [ebp - 0x10464]
push ecx
lea edx, [ebp - 0x10228]
push edx
call fcn.0040e490
add esp, 0xc
mov dword [ebp - 0x10468], eax
mov eax, dword [ebp - 0x10468]
mov dword [ebp - 0x1046c], eax
mov byte [ebp - 4], 0xa
push str.ini.reg
mov ecx, dword [ebp - 0x1046c]
push ecx
lea edx, [ebp - 0x14]
push edx
call fcn.0040e490
add esp, 0xc
mov byte [ebp - 4], 0xd
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x10228]
sub eax, 0x10
mov dword [ebp - 0x102f0], eax
mov ecx, dword [ebp - 0x102f0]
call fcn.00412510
mov byte [ebp - 4], 0xf
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x10224]
sub ecx, 0x10
mov dword [ebp - 0x102f4], ecx
mov ecx, dword [ebp - 0x102f4]
call fcn.00412510
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x102f8], edx
push 0
push 0
push 4
push 0
push 0
push 0x40000000
mov eax, dword [ebp - 0x102f8]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x10200], eax
cmp dword [ebp - 0x10200], 0xffffffff
je 0x410df2
push 0
push 0
push 0
mov ecx, dword [ebp - 0x10200]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push 0
lea edx, [ebp - 0x10210]
push edx
mov eax, dword [ebp - 0x18]
push eax
lea ecx, [ebp - 0xfffc]
push ecx
mov edx, dword [ebp - 0x10200]
push edx
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, dword [ebp - 0x10200]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x58ff30], 0
je 0x410e23
mov ecx, dword [0x58ff30]
add ecx, 0x74
mov dword [ebp - 0x102fc], ecx
push 0
push 0x46
push 0x402
mov edx, dword [ebp - 0x102fc]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
call fcn.00416f3e
mov dword [ebp - 0x10300], eax
mov ecx, dword [ebp - 0x10300]
push ecx
lea ecx, [ebp - 0x10208]
call fcn.00413480
mov byte [ebp - 4], 0x10
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x14]
push edx
push str._S___s_
lea eax, [ebp - 0x10208]
push eax
call fcn.00413890
add esp, 0xc
push 0x544268
lea ecx, [ebp - 0x10204]
push ecx
lea edx, [ebp - 0x1022c]
push edx
call fcn.0040e490
add esp, 0xc
mov dword [ebp - 0x10470], eax
mov eax, dword [ebp - 0x10470]
mov dword [ebp - 0x10474], eax
mov byte [ebp - 4], 0x12
push 0x544258
mov ecx, dword [ebp - 0x10474]
push ecx
lea edx, [ebp - 0x10230]
push edx
call fcn.0040e490
add esp, 0xc
mov dword [ebp - 0x10478], eax
mov eax, dword [ebp - 0x10478]
mov dword [ebp - 0x10304], eax
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x10304]
mov edx, dword [ecx]
mov dword [ebp - 0x10308], edx
push 0
mov eax, dword [ebp - 0x10308]
push eax
mov ecx, dword [ebp - 0x10208]
push ecx
push str.regedit.exe
push 0
push 0
call fcn.0040fff0
add esp, 0x18
mov byte [ebp - 4], 0x14
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x10230]
sub edx, 0x10
mov dword [ebp - 0x1030c], edx
mov ecx, dword [ebp - 0x1030c]
call fcn.00412510
mov byte [ebp - 4], 0x15
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x1022c]
sub eax, 0x10
mov dword [ebp - 0x10310], eax
mov ecx, dword [ebp - 0x10310]
call fcn.00412510
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x5901d8]
push ecx
push str.TC_TCServer
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
mov edx, dword [0x5901c0]
push edx
push str.TC_TCPort
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004102a0
add esp, 0x10
mov eax, dword [0x5901d4]
push eax
push str.TC_PatchServer
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
mov ecx, dword [0x5901c4]
push ecx
push str.TC_HTTP_Port
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004102a0
add esp, 0x10
mov ecx, 0x5901cc
call fcn.00412d00
mov ecx, 0x5902c8
call fcn.00412d00
mov ecx, 0x5901d0
call fcn.00412d00
mov edx, dword [0x5901cc]
push edx
push str.TC_Org
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
mov eax, dword [0x5902c8]
push eax
push str.TC_Section
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
mov ecx, dword [0x5901d0]
push ecx
push str.TC_User_office
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
push 0x544258
lea ecx, [ebp - 0x10234]
call fcn.00401c80
mov dword [ebp - 0x1047c], eax
mov edx, dword [ebp - 0x1047c]
mov dword [ebp - 0x10480], edx
mov byte [ebp - 4], 0x16
push 0x544268
lea ecx, [ebp - 0x10238]
call fcn.00401c80
mov dword [ebp - 0x10484], eax
mov eax, dword [ebp - 0x10484]
mov dword [ebp - 0x10488], eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10488]
push ecx
lea edx, [ebp - 0x101fc]
push edx
lea eax, [ebp - 0x1023c]
push eax
call fcn.0040e5a0
add esp, 0xc
mov dword [ebp - 0x1048c], eax
mov ecx, dword [ebp - 0x1048c]
mov dword [ebp - 0x10490], ecx
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x10480]
push edx
mov eax, dword [ebp - 0x10490]
push eax
lea ecx, [ebp - 0x10240]
push ecx
call fcn.00413220
add esp, 0xc
mov dword [ebp - 0x10494], eax
mov edx, dword [ebp - 0x10494]
mov dword [ebp - 0x1033c], edx
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x1033c]
push eax
lea ecx, [ebp - 0x10204]
call fcn.00413510
mov byte [ebp - 4], 0x1a
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x10240]
sub ecx, 0x10
mov dword [ebp - 0x10340], ecx
mov ecx, dword [ebp - 0x10340]
call fcn.00412510
mov byte [ebp - 4], 0x1b
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x1023c]
call fcn.00402030
mov byte [ebp - 4], 0x1c
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x10238]
call fcn.00402030
mov byte [ebp - 4], 0x1d
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x10234]
call fcn.00402030
cmp dword [0x5901b8], 0
je 0x411291
movzx edx, byte [0x5901bd]
test edx, edx
jne 0x411291
push 0
push str.__x86_
lea ecx, [ebp - 0x10204]
call fcn.00412c80
cmp eax, 0xffffffff
jne 0x411291
push 0x544258
lea ecx, [ebp - 0x10244]
call fcn.00401c80
mov dword [ebp - 0x10498], eax
mov eax, dword [ebp - 0x10498]
mov dword [ebp - 0x1049c], eax
mov byte [ebp - 4], 0x1e
push str.__x86__
lea ecx, [ebp - 0x10248]
call fcn.00401c80
mov dword [ebp - 0x104a0], eax
mov ecx, dword [ebp - 0x104a0]
mov dword [ebp - 0x104a4], ecx
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0x104a4]
push edx
lea eax, [ebp - 0x101fc]
push eax
lea ecx, [ebp - 0x1024c]
push ecx
call fcn.0040e5a0
add esp, 0xc
mov dword [ebp - 0x104a8], eax
mov edx, dword [ebp - 0x104a8]
mov dword [ebp - 0x104ac], edx
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x1049c]
push eax
mov ecx, dword [ebp - 0x104ac]
push ecx
lea edx, [ebp - 0x10250]
push edx
call fcn.00413220
add esp, 0xc
mov dword [ebp - 0x104b0], eax
mov eax, dword [ebp - 0x104b0]
mov dword [ebp - 0x1036c], eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x1036c]
push ecx
lea ecx, [ebp - 0x10204]
call fcn.00413510
mov byte [ebp - 4], 0x22
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x10250]
call fcn.00402030
mov byte [ebp - 4], 0x23
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x1024c]
call fcn.00402030
mov byte [ebp - 4], 0x24
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x10248]
call fcn.00402030
mov byte [ebp - 4], 0x25
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x10244]
call fcn.00402030
cmp dword [0x5901b8], 0
je 0x4112d1
movzx edx, byte [0x5901bd]
test edx, edx
je 0x4112d1
push 0
push str.__x86_
lea ecx, [ebp - 0x10204]
call fcn.00412c80
cmp eax, 0xffffffff
je 0x4112d1
push 0x541f7e
push str.__x86_
lea ecx, [ebp - 0x10204]
call fcn.004127e0
mov eax, dword [ebp - 0x10204]
push eax
push str.TC_InstallPath
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
push 0
call fcn.00516306
add esp, 4
mov dword [ebp - 0x103cc], eax
mov dword [ebp - 0x103c8], edx
mov ecx, dword [ebp - 0x103cc]
mov dword [ebp - 0x10258], ecx
mov edx, dword [ebp - 0x103c8]
mov dword [ebp - 0x10254], edx
push str._m__d__Y
lea eax, [ebp - 0x1020c]
push eax
lea ecx, [ebp - 0x10258]
call fcn.00412580
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x1020c]
push ecx
push str.TC_IDATE
push str.SOFTWARETrueCut_tc_INSTALL
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
cmp dword [0x5901c8], 0
jne 0x411391
push 0
push str.EnableLUA
push str.SoftwareMicrosoftWindowsCurrentVersionPoliciesSystem
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004102a0
add esp, 0x10
push 1
push str.UacDisableNotify
push str.SoftwareMicrosoftSecurity_Center
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004102a0
add esp, 0x10
cmp dword [0x58ff30], 0
je 0x4113c2
mov edx, dword [0x58ff30]
add edx, 0x74
mov dword [ebp - 0x103d0], edx
push 0
push 0x5a
push 0x402
mov eax, dword [ebp - 0x103d0]
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [ebp - 0x10204]
push edx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
push 0x544268
lea eax, [ebp - 0x10204]
push eax
lea ecx, [ebp - 0x1025c]
push ecx
call fcn.0040e490
add esp, 0xc
mov dword [ebp - 0x104b4], eax
mov edx, dword [ebp - 0x104b4]
mov dword [ebp - 0x104b8], edx
mov byte [ebp - 4], 0x27
push str.trojancut.exe
mov eax, dword [ebp - 0x104b8]
push eax
lea ecx, [ebp - 0x10260]
push ecx
call fcn.0040e490
add esp, 0xc
mov dword [ebp - 0x104bc], eax
mov edx, dword [ebp - 0x104bc]
mov dword [ebp - 0x103d4], edx
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x103d4]
push eax
lea ecx, [ebp - 0x14]
call fcn.00413510
mov byte [ebp - 4], 0x29
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x10260]
call fcn.00402030
mov byte [ebp - 4], 0x2a
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x1025c]
call fcn.00402030
push 5
push 0
push 0
mov ecx, dword [ebp - 0x14]
push ecx
push 0
push 0
call fcn.0040fff0
add esp, 0x18
mov edx, dword [ebp - 0x14]
push edx
push 0x54452c
push str.SOFTWAREMicrosoftWindowsCurrentVersionRun
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
push str.tc_au.exe
push str.trojancut.exe
lea ecx, [ebp - 0x14]
call fcn.004127e0
mov eax, dword [ebp - 0x14]
push eax
push str.TrojanCutAutoPatch
push str.SOFTWAREMicrosoftWindowsCurrentVersionRun
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004101a0
add esp, 0x10
cmp dword [0x5901b8], 0
je 0x4114d2
call fcn.0040e990
cmp dword [0x58ff30], 0
je 0x411503
mov ecx, dword [0x58ff30]
add ecx, 0x74
mov dword [ebp - 0x1041c], ecx
push 0
push 0x64
push 0x402
mov edx, dword [ebp - 0x1041c]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [0x58ff30], 0
je 0x411517
mov ecx, dword [0x58ff30]
call fcn.0040e060
mov byte [ebp - 4], 0x2b
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x1020c]
sub ecx, 0x10
mov dword [ebp - 0x10420], ecx
mov ecx, dword [ebp - 0x10420]
call fcn.00412510
mov byte [ebp - 4], 0x2c
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x10208]
call fcn.00402030
mov byte [ebp - 4], 0x2d
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402030
mov dword [ebp - 4], 0x2e
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10204]
call fcn.00402030
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.0051555a
mov esp, ebp
pop ebp
ret