Function at 0x4012b0
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x6124
call fcn.00403e50
mov eax, dword [0x425034]
xor eax, ebp
mov dword [ebp - 4], eax
push 0
mov eax, dword [0x42a900]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
push 0
mov ecx, dword [0x42a904]
push ecx
call dword [sym.imp.USER32.dll_EnableWindow]
push 0x1000
push 0
lea edx, [ebp - 0x1084]
push edx
call fcn.00405f10
add esp, 0xc
push 0x41d1d0
lea eax, [ebp - 0x1084]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x1084]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
lea edx, [ebp + eax - 0x1084]
mov dword [ebp - 0x610c], edx
push 0
push 0
push 0x147
mov eax, dword [0x42a8f8]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebp - 0x6110], eax
mov ecx, dword [ebp - 0x610c]
push ecx
mov edx, dword [ebp - 0x6110]
push edx
push 0x148
mov eax, dword [0x42a8f8]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [ebp - 0x1084]
push ecx
call fcn.00402fe0
add esp, 4
cmp eax, 0xffffffff
jne 0x4013c4
push 0x1000
push 0
lea edx, [ebp - 0x2084]
push edx
call fcn.00405f10
add esp, 0xc
lea eax, [ebp - 0x1084]
push eax
push str._WRONG_FILE___nFile__s_is_an_unknown_EXE_file._nTherefore__nKitServer_will_NOT_be_attached_to_it.
lea ecx, [ebp - 0x2084]
push ecx
call fcn.00402ee0
add esp, 0xc
push 0
push 0x41d1d4
lea edx, [ebp - 0x2084]
push edx
mov eax, dword [0x4258e0]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x401bf6
push 0x41d260
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x6114], eax
push 0x41d270
mov ecx, dword [ebp - 0x6114]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x6118], eax
push 0x41d280
lea edx, [ebp - 0x1084]
push edx
call fcn.00407a16
add esp, 8
mov dword [ebp - 0x60d8], eax
cmp dword [ebp - 0x60d8], 0
je 0x401b78
push str.LoadLibraryA
push str.kernel32.dll
mov eax, dword [ebp - 0x60d8]
push eax
call fcn.00403b50
add esp, 0xc
mov dword [ebp - 0x611c], eax
mov ecx, dword [ebp - 0x60d8]
push ecx
call fcn.00403910
add esp, 4
movzx edx, al
test edx, edx
je 0x401463
mov eax, dword [ebp - 0x60d8]
push eax
push 1
push 4
lea ecx, [ebp - 0x6108]
push ecx
call fcn.00407c13
add esp, 0x10
mov edx, dword [ebp - 0x60d8]
push edx
call fcn.00403a00
add esp, 4
movzx eax, al
test eax, eax
je 0x401493
mov ecx, dword [ebp - 0x60d8]
push ecx
push 1
push 4
lea edx, [ebp - 0x60f4]
push edx
call fcn.00407c13
add esp, 0x10
push 0x28
push 0
lea eax, [ebp - 0x60ac]
push eax
call fcn.00405f10
add esp, 0xc
mov dword [ebp - 0x60e0], 0
mov dword [ebp - 0x60ec], 0
push 0x41d2a4
mov ecx, dword [ebp - 0x60d8]
push ecx
call fcn.00403790
add esp, 8
movzx edx, al
test edx, edx
je 0x4015b4
mov eax, dword [ebp - 0x60d8]
push eax
push 1
push 0x28
lea ecx, [ebp - 0x60ac]
push ecx
call fcn.00407c13
add esp, 0x10
mov eax, dword [ebp - 0x609c]
xor edx, edx
mov ecx, 0x80
div ecx
mov dword [ebp - 0x60fc], edx
cmp dword [ebp - 0x60fc], 0
jle 0x401555
mov edx, 0x80
sub edx, dword [ebp - 0x60fc]
add edx, dword [ebp - 0x609c]
mov dword [ebp - 0x609c], edx
push 1
push 0xffffffffffffffd8
mov eax, dword [ebp - 0x60d8]
push eax
call fcn.0040800a
add esp, 0xc
mov ecx, dword [ebp - 0x60d8]
push ecx
push 1
push 0x28
lea edx, [ebp - 0x60ac]
push edx
call fcn.00408244
add esp, 0x10
mov eax, dword [ebp - 0x60a0]
add eax, dword [ebp - 0x609c]
mov dword [ebp - 0x60ec], eax
cmp dword [ebp - 0x6098], 0
je 0x401584
mov ecx, dword [ebp - 0x6098]
add ecx, dword [ebp - 0x609c]
mov dword [ebp - 0x60e0], ecx
jmp 0x401596
mov edx, dword [ebp - 0x60a0]
add edx, dword [ebp - 0x609c]
mov dword [ebp - 0x60e0], edx
mov eax, dword [ebp - 0x60e0]
sub eax, 0x20
mov dword [ebp - 0x60e0], eax
mov ecx, dword [ebp - 0x60ec]
sub ecx, 0x20
mov dword [ebp - 0x60ec], ecx
mov edx, dword [ebp - 0x60e0]
push edx
push 0x41d2ac
call fcn.00401290
add esp, 8
mov eax, dword [ebp - 0x60ec]
push eax
push 0x41d2c0
call fcn.00401290
add esp, 8
cmp dword [ebp - 0x60e0], 0
je 0x40176c
push 0x20
push 0
lea ecx, [ebp - 0x64]
push ecx
call fcn.00405f10
add esp, 0xc
push 0x20
push 0
lea edx, [ebp - 0x44]
push edx
call fcn.00405f10
add esp, 0xc
push 0
mov eax, dword [ebp - 0x60e0]
push eax
mov ecx, dword [ebp - 0x60d8]
push ecx
call fcn.0040800a
add esp, 0xc
mov edx, dword [ebp - 0x60d8]
push edx
push 1
push 0x20
lea eax, [ebp - 0x44]
push eax
call fcn.00407c13
add esp, 0x10
push 0x20
lea ecx, [ebp - 0x64]
push ecx
lea edx, [ebp - 0x44]
push edx
call fcn.004049dd
add esp, 0xc
test eax, eax
jne 0x40170c
push 1
push 0xffffffffffffffe0
mov eax, dword [ebp - 0x60d8]
push eax
call fcn.0040800a
add esp, 0xc
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x6100], ecx
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ebp - 0x6100]
mov edx, dword [ebp - 0x6108]
mov dword [ecx + eax], edx
mov eax, 4
shl eax, 0
mov ecx, dword [ebp - 0x6100]
mov edx, dword [ebp - 0x6118]
mov dword [ecx + eax], edx
push 0x4298e8
call dword [sym.imp.KERNEL32.dll_lstrlenA]
add eax, 1
push eax
push 0x4298e8
lea eax, [ebp - 0x3c]
push eax
call fcn.00405990
add esp, 0xc
mov ecx, dword [ebp - 0x60d8]
push ecx
push 1
push 0x20
lea edx, [ebp - 0x44]
push edx
call fcn.00408244
add esp, 0x10
mov eax, dword [ebp - 0x60ec]
mov ecx, dword [ebp - 0x60f4]
lea edx, [ecx + eax + 4]
mov dword [ebp - 0x60f8], edx
mov eax, dword [ebp - 0x60f8]
add eax, 4
mov dword [ebp - 0x6120], eax
mov ecx, dword [ebp - 0x60f4]
add ecx, dword [ebp - 0x611c]
mov dword [ebp - 0x60f8], ecx
jmp 0x40176c
mov edx, dword [ebp - 0x60d8]
push edx
call fcn.0040775b
add esp, 4
push 0x1000
push 0
lea eax, [ebp - 0x3084]
push eax
call fcn.00405f10
add esp, 0xc
lea ecx, [ebp - 0x1084]
push ecx
push str._INFORMATION___nKitServer_6_is_already_installed__1__for_n_s.
lea edx, [ebp - 0x3084]
push edx
call fcn.00402ee0
add esp, 0xc
push 0
push 0x41d320
lea eax, [ebp - 0x3084]
push eax
mov ecx, dword [0x4258e0]
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x401bf6
push 0x28
push 0
lea edx, [ebp - 0x60d4]
push edx
call fcn.00405f10
add esp, 0xc
mov dword [ebp - 0x60e4], 0
mov dword [ebp - 0x60e8], 0
push 0x41d33c
mov eax, dword [ebp - 0x60d8]
push eax
call fcn.00403790
add esp, 8
mov byte [ebp - 0x60d9], al
movzx ecx, byte [ebp - 0x60d9]
test ecx, ecx
jne 0x4017d2
push 0x41d1ee
mov edx, dword [ebp - 0x60d8]
push edx
call fcn.00403790
add esp, 8
mov byte [ebp - 0x60d9], al
movzx eax, byte [ebp - 0x60d9]
test eax, eax
je 0x4018be
mov ecx, dword [ebp - 0x60d8]
push ecx
push 1
push 0x28
lea edx, [ebp - 0x60d4]
push edx
call fcn.00407c13
add esp, 0x10
mov eax, dword [ebp - 0x60c4]
xor edx, edx
mov ecx, 0x40
div ecx
mov dword [ebp - 0x6104], edx
cmp dword [ebp - 0x6104], 0
jle 0x40185d
mov edx, 0x40
sub edx, dword [ebp - 0x6104]
add edx, dword [ebp - 0x60c4]
mov dword [ebp - 0x60c4], edx
push 1
push 0xffffffffffffffd8
mov eax, dword [ebp - 0x60d8]
push eax
call fcn.0040800a
add esp, 0xc
mov ecx, dword [ebp - 0x60d8]
push ecx
push 1
push 0x28
lea edx, [ebp - 0x60d4]
push edx
call fcn.00408244
add esp, 0x10
mov eax, dword [ebp - 0x60c8]
add eax, dword [ebp - 0x60c4]
mov dword [ebp - 0x60e8], eax
cmp dword [ebp - 0x60c0], 0
je 0x40188c
mov ecx, dword [ebp - 0x60c0]
add ecx, dword [ebp - 0x60c4]
mov dword [ebp - 0x60e4], ecx
jmp 0x40189e
mov edx, dword [ebp - 0x60c8]
add edx, dword [ebp - 0x60c4]
mov dword [ebp - 0x60e4], edx
mov eax, dword [ebp - 0x60e4]
sub eax, 0x20
mov dword [ebp - 0x60e4], eax
mov ecx, dword [ebp - 0x60e8]
sub ecx, 0x20
mov dword [ebp - 0x60e8], ecx
jmp 0x4018cd
push 0
push str.section_header_for_.text_not_found
call fcn.00401290
add esp, 8
mov edx, dword [ebp - 0x60e4]
push edx
push 0x41d36c
call fcn.00401290
add esp, 8
mov eax, dword [ebp - 0x60e8]
push eax
push 0x41d380
call fcn.00401290
add esp, 8
cmp dword [ebp - 0x60e4], 0
je 0x401ab8
push 0x20
push 0
lea ecx, [ebp - 0x84]
push ecx
call fcn.00405f10
add esp, 0xc
push 0x20
push 0
lea edx, [ebp - 0x24]
push edx
call fcn.00405f10
add esp, 0xc
push 0
mov eax, dword [ebp - 0x60e4]
push eax
mov ecx, dword [ebp - 0x60d8]
push ecx
call fcn.0040800a
add esp, 0xc
mov edx, dword [ebp - 0x60d8]
push edx
push 1
push 0x20
lea eax, [ebp - 0x24]
push eax
call fcn.00407c13
add esp, 0x10
push 0x20
lea ecx, [ebp - 0x84]
push ecx
lea edx, [ebp - 0x24]
push edx
call fcn.004049dd
add esp, 0xc
test eax, eax
jne 0x401a59
push 1
push 0xffffffffffffffe0
mov eax, dword [ebp - 0x60d8]
push eax
call fcn.0040800a
add esp, 0xc
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x24], 0x68
lea eax, [ebp - 0x23]
mov dword [ebp - 0x60f0], eax
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [ebp - 0x60f0]
mov ecx, dword [ebp - 0x6120]
mov dword [eax + edx], ecx
mov edx, 1
imul eax, edx, 5
mov byte [ebp + eax - 0x24], 0xff
mov ecx, 1
imul edx, ecx, 6
mov byte [ebp + edx - 0x24], 0x15
lea eax, [ebp - 0x1d]
mov dword [ebp - 0x60f0], eax
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [ebp - 0x60f0]
mov ecx, dword [ebp - 0x60f8]
mov dword [eax + edx], ecx
mov edx, 1
imul eax, edx, 0xb
mov byte [ebp + eax - 0x24], 0xe9
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x60f0], ecx
mov edx, dword [ebp - 0x6108]
mov eax, dword [ebp - 0x60f4]
lea ecx, [eax + edx - 5]
mov edx, dword [ebp - 0x60e8]
mov eax, dword [ebp - 0x60f4]
lea edx, [eax + edx + 0xb]
sub ecx, edx
mov eax, 4
imul edx, eax, 0
mov eax, dword [ebp - 0x60f0]
mov dword [eax + edx], ecx
mov ecx, dword [ebp - 0x60d8]
push ecx
push 1
push 0x20
lea edx, [ebp - 0x24]
push edx
call fcn.00408244
add esp, 0x10
mov eax, dword [ebp - 0x60e8]
mov dword [ebp - 0x6124], eax
jmp 0x401ab8
mov ecx, dword [ebp - 0x60d8]
push ecx
call fcn.0040775b
add esp, 4
push 0x1000
push 0
lea edx, [ebp - 0x4084]
push edx
call fcn.00405f10
add esp, 0xc
lea eax, [ebp - 0x1084]
push eax
push str._INFORMATION___nKitServer_6_is_already_installed__2__for_n_s.
lea ecx, [ebp - 0x4084]
push ecx
call fcn.00402ee0
add esp, 0xc
push 0
push 0x41d3e0
lea edx, [ebp - 0x4084]
push edx
mov eax, dword [0x4258e0]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x401bf6
mov ecx, dword [ebp - 0x60d8]
push ecx
call fcn.00403910
add esp, 4
movzx edx, al
test edx, edx
je 0x401ae8
mov eax, dword [ebp - 0x60d8]
push eax
push 1
push 4
lea ecx, [ebp - 0x6124]
push ecx
call fcn.00408244
add esp, 0x10
mov edx, dword [ebp - 0x60d8]
push edx
call fcn.0040775b
add esp, 4
push 0x41d3fc
push 0
push 0xc
mov eax, dword [0x42a8fc]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
mov ecx, dword [0x42a900]
push ecx
call dword [sym.imp.USER32.dll_EnableWindow]
push 1
mov edx, dword [0x42a904]
push edx
call dword [sym.imp.USER32.dll_EnableWindow]
push 0x1000
push 0
lea eax, [ebp - 0x5084]
push eax
call fcn.00405f10
add esp, 0xc
lea ecx, [ebp - 0x1084]
push ecx
push str._SUCCESS___nSetup_has_installed_KitServer_6_for_n_s.
lea edx, [ebp - 0x5084]
push edx
call fcn.00402ee0
add esp, 0xc
push 0
push 0x41d42c
lea eax, [ebp - 0x5084]
push eax
mov ecx, dword [0x4258e0]
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x401bf6
push str._ERROR:_install_failed_
push 0
push 0xc
mov edx, dword [0x42a8fc]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push 1
mov eax, dword [0x42a900]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
push 0
mov ecx, dword [0x42a904]
push ecx
call dword [sym.imp.USER32.dll_EnableWindow]
push 0x1000
push 0
lea edx, [ebp - 0x6084]
push edx
call fcn.00405f10
add esp, 0xc
lea eax, [ebp - 0x1084]
push eax
push str._ERROR___nSetup_failed_to_install_KitServer_6_for_n_s._n_n_No_modifications_made.__nVerify_that_the_executable_is_not_nREAD_ONLY__and_try_again.
lea ecx, [ebp - 0x6084]
push ecx
call fcn.00402ee0
add esp, 0xc
push 0
push 0x41d544
lea edx, [ebp - 0x6084]
push edx
mov eax, dword [0x4258e0]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00403e3e
mov esp, ebp
pop ebp
ret