Function at 0x401850
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2ec
push esi
push edi
lea edi, [ebp - 0x2ec]
mov ecx, 0xbb
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [0x406010]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 8], 0
mov esi, esp
push str.USERPROFILE
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x228]
push ecx
call dword [sym.imp.MSVCR100.dll__dupenv_s]
add esp, 0xc
cmp esi, esp
call fcn.00402e91
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4018e2
mov esi, esp
push str.Error_fetching_USERPROFILE._n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov esi, esp
push 0x404470
call dword [sym.imp.MSVCR100.dll_perror]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov eax, dword [ebp - 8]
jmp 0x401cdc
mov ecx, 6
mov esi, str..accessibility.properties
lea edi, [ebp - 0x258]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov ecx, 6
mov esi, str..acce__ibility.properties
lea edi, [ebp - 0x27c]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov edx, dword [ebp - 0x234]
sub edx, 1
cmp edx, 0xe9
ja 0x40192d
mov eax, dword [ebp - 0x234]
sub eax, 1
cmp eax, 0xe9
jbe 0x401965
mov esi, esp
push str.The_USERPROFILE_environment_variable_is_too_long._n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov esi, esp
push str.It_must_be_no_longer_than_233_characters._n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov eax, 0x7b
jmp 0x401cdc
mov byte [ebp - 0x110], 0
mov esi, esp
mov ecx, dword [ebp - 0x228]
push ecx
push 0x104
lea edx, [ebp - 0x110]
push edx
call dword [sym.imp.MSVCR100.dll_strcat_s]
add esp, 0xc
cmp esi, esp
call fcn.00402e91
lea eax, [ebp - 0x258]
push eax
lea ecx, [ebp - 0x110]
push ecx
call fcn.00402d90
add esp, 8
mov byte [ebp - 0x21c], 0
mov esi, esp
mov edx, dword [ebp - 0x228]
push edx
push 0x104
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.MSVCR100.dll_strcat_s]
add esp, 0xc
cmp esi, esp
call fcn.00402e91
lea ecx, [ebp - 0x27c]
push ecx
lea edx, [ebp - 0x21c]
push edx
call fcn.00402d90
add esp, 8
mov esi, esp
mov eax, dword [ebp - 0x228]
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov dword [ebp - 0x228], 0
mov esi, esp
push 0x404510
lea ecx, [ebp - 0x110]
push ecx
push 0x40604c
call dword [sym.imp.MSVCR100.dll_fopen_s]
add esp, 0xc
cmp esi, esp
call fcn.00402e91
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x401b52
movzx edx, byte [ebp + 8]
test edx, edx
je 0x401b46
mov esi, esp
push 0x404514
lea eax, [ebp - 0x110]
push eax
push 0x40604c
call dword [sym.imp.MSVCR100.dll_fopen_s]
add esp, 0xc
cmp esi, esp
call fcn.00402e91
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x401aae
mov esi, esp
lea ecx, [ebp - 0x110]
push ecx
push str.Couldnt_create_file:__s_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 8
cmp esi, esp
call fcn.00402e91
mov esi, esp
push 0x404534
call dword [sym.imp.MSVCR100.dll_perror]
add esp, 4
cmp esi, esp
call fcn.00402e91
jmp 0x401b44
mov ecx, 0x10
mov esi, str.assistive_technologiescom.sun.java.accessibility.AccessBridge_n
lea edi, [ebp - 0x2e8]
rep movsd dword es:[edi], dword [esi]
xor edx, edx
mov dword [ebp - 0x2a8], edx
mov dword [ebp - 0x2a4], edx
mov dword [ebp - 0x2a0], edx
mov dword [ebp - 0x29c], edx
mov dword [ebp - 0x298], edx
mov dword [ebp - 0x294], edx
mov dword [ebp - 0x290], edx
mov dword [ebp - 0x28c], edx
mov dword [ebp - 0x288], edx
push str.screen_magnifier_presenttrue_n
lea eax, [ebp - 0x2e8]
push eax
call fcn.00402dc0
add esp, 8
mov esi, esp
lea ecx, [ebp - 0x2e8]
push ecx
mov edx, dword [0x40604c]
push edx
call dword [sym.imp.MSVCR100.dll_fprintf]
add esp, 8
cmp esi, esp
call fcn.00402e91
mov esi, esp
mov eax, dword [0x40604c]
push eax
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.00402e91
jmp 0x401b4d
mov dword [ebp - 8], 0
jmp 0x401cd9
mov esi, esp
push 0x40455c
lea ecx, [ebp - 0x21c]
push ecx
push 0x406048
call dword [sym.imp.MSVCR100.dll_fopen_s]
add esp, 0xc
cmp esi, esp
call fcn.00402e91
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x401bbb
mov esi, esp
lea edx, [ebp - 0x21c]
push edx
push str.Couldnt_open_temp_file:__s_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 8
cmp esi, esp
call fcn.00402e91
mov esi, esp
push 0x4045c0
call dword [sym.imp.MSVCR100.dll_perror]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov eax, dword [ebp - 8]
jmp 0x401cdc
movzx eax, byte [ebp + 8]
test eax, eax
je 0x401bca
call fcn.004010c0
jmp 0x401bcf
call fcn.004015a0
mov esi, esp
mov ecx, dword [0x40604c]
push ecx
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov esi, esp
mov edx, dword [0x406048]
push edx
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov esi, esp
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.MSVCR100.dll_remove]
add esp, 4
cmp esi, esp
call fcn.00402e91
test eax, eax
je 0x401c66
mov esi, esp
lea ecx, [ebp - 0x110]
push ecx
push str.Couldnt_remove_file:__s_n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 8
cmp esi, esp
call fcn.00402e91
mov esi, esp
push 0x4045e4
call dword [sym.imp.MSVCR100.dll_perror]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov esi, esp
call dword [sym.imp.MSVCR100.dll__errno]
cmp esi, esp
call fcn.00402e91
mov eax, dword [eax]
jmp 0x401cdc
mov esi, esp
lea edx, [ebp - 0x110]
push edx
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.MSVCR100.dll_rename]
add esp, 8
cmp esi, esp
call fcn.00402e91
test eax, eax
je 0x401cd9
mov esi, esp
lea ecx, [ebp - 0x110]
push ecx
lea edx, [ebp - 0x21c]
push edx
push str.Couldnt_rename__s_to__s._n
call dword [sym.imp.MSVCR100.dll_printf]
add esp, 0xc
cmp esi, esp
call fcn.00402e91
mov esi, esp
push str.Error
call dword [sym.imp.MSVCR100.dll_perror]
add esp, 4
cmp esi, esp
call fcn.00402e91
mov esi, esp
call dword [sym.imp.MSVCR100.dll__errno]
cmp esi, esp
call fcn.00402e91
mov eax, dword [eax]
jmp 0x401cdc
mov eax, dword [ebp - 8]
push edx
mov ecx, ebp
push eax
lea edx, [0x401d0c]
call fcn.00402eb4
pop eax
pop edx
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00402e82
add esp, 0x2ec
cmp ebp, esp
call fcn.00402e91
mov esp, ebp
pop ebp
ret