Function at 0x41a1d0
Capabilities:
Check if file exists
Copy file
Create directory
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46986e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2dc
push esi
push edi
mov dword [ebp - 0x2e8], ecx
lea ecx, [ebp - 0x23c]
call fcn.0040dfd0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.0040dfd0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0040dfd0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x258]
call fcn.0040dfd0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0040dfd0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.0040dfd0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x27c]
call fcn.0040dfd0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2bc]
call fcn.00460a77
mov byte [ebp - 4], 7
mov byte [ebp - 0x234], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x233]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x12c], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x12b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x2ac], 0
mov dword [ebp - 0x2a4], 0
mov ecx, 7
xor eax, eax
lea edi, [ebp - 0x2a0]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x25c], 0
mov dword [ebp - 0x254], 0
xor eax, eax
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x24c], eax
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x274], 0
xor ecx, ecx
mov dword [ebp - 0x270], ecx
mov dword [ebp - 0x26c], ecx
mov dword [ebp - 0x268], ecx
mov dword [ebp - 0x20], 0
xor edx, edx
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x284], 0
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x280], 0
mov eax, dword [0x46f2ac]
push eax
push 0x4818a8
lea ecx, [ebp - 0x240]
push ecx
call fcn.0045b306
add esp, 0xc
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0x70]
push eax
push 0x4818ac
lea ecx, [ebp - 0x23c]
push ecx
call fcn.0045b306
add esp, 0xc
lea ecx, [ebp - 0x23c]
call fcn.0040e000
mov esi, eax
lea ecx, [ebp - 0x240]
call fcn.0040e000
sub esi, eax
push esi
lea ecx, [ebp - 0x240]
call fcn.0040e000
push eax
lea ecx, [ebp - 0x23c]
call fcn.0045ada2
lea ecx, [ebp - 0x240]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x23c]
call fcn.004161a0
test eax, eax
jne 0x41a5f2
lea ecx, [ebp - 0x240]
call fcn.0040e000
mov esi, eax
lea ecx, [ebp - 0x23c]
call fcn.0040e000
cmp esi, eax
jne 0x41a5f2
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0x70]
push eax
push 0x4818b0
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc4
push ecx
call fcn.0045b306
add esp, 0xc
lea ecx, [ebp - 0x240]
call fcn.0040e000
push eax
push 0
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc4
call fcn.0045ada2
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc4
call fcn.0040e100
test eax, eax
je 0x41a501
mov dword [ebp - 0x2c0], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2bc]
call fcn.00460acc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x27c]
call fcn.0046051a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.0046051a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0046051a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x258]
call fcn.0046051a
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0046051a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.0046051a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x23c]
call fcn.0046051a
mov eax, dword [ebp - 0x2c0]
jmp 0x41b82b
push 0
mov ecx, dword [ebp - 0x2e8]
call fcn.0041b83b
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0xd0]
push eax
mov ecx, dword [0x46f2b0]
push ecx
push 0x4818b4
lea edx, [ebp - 0x23c]
push edx
call fcn.0045b306
add esp, 0x10
push 0
push 0
lea ecx, [ebp - 0x23c]
call fcn.0040dff0
push eax
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc4
call fcn.0040dff0
push eax
push 0x4818bc
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov dword [ebp - 0x2c4], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2bc]
call fcn.00460acc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x27c]
call fcn.0046051a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.0046051a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0046051a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x258]
call fcn.0046051a
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0046051a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.0046051a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x23c]
call fcn.0046051a
mov eax, dword [ebp - 0x2c4]
jmp 0x41b82b
mov eax, dword [0x46f2a8]
push eax
push 0x4818c4
lea ecx, [ebp - 0x240]
push ecx
call fcn.0045b306
add esp, 0xc
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0x70]
push eax
push 0x4818c8
lea ecx, [ebp - 0x23c]
push ecx
call fcn.0045b306
add esp, 0xc
lea ecx, [ebp - 0x23c]
call fcn.0040e000
mov esi, eax
lea ecx, [ebp - 0x240]
call fcn.0040e000
sub esi, eax
push esi
lea ecx, [ebp - 0x240]
call fcn.0040e000
push eax
lea ecx, [ebp - 0x23c]
call fcn.0045ada2
lea ecx, [ebp - 0x240]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x23c]
call fcn.004161a0
test eax, eax
jne 0x41a875
lea ecx, [ebp - 0x240]
call fcn.0040e000
mov esi, eax
lea ecx, [ebp - 0x23c]
call fcn.0040e000
cmp esi, eax
jne 0x41a875
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0x70]
push eax
push 0x4818cc
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc4
push ecx
call fcn.0045b306
add esp, 0xc
lea ecx, [ebp - 0x240]
call fcn.0040e000
push eax
push 0
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc4
call fcn.0045ada2
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc4
call fcn.0040e100
test eax, eax
je 0x41a784
mov dword [ebp - 0x2c8], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2bc]
call fcn.00460acc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x27c]
call fcn.0046051a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.0046051a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0046051a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x258]
call fcn.0046051a
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0046051a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.0046051a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x23c]
call fcn.0046051a
mov eax, dword [ebp - 0x2c8]
jmp 0x41b82b
push 1
mov ecx, dword [ebp - 0x2e8]
call fcn.0041b83b
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0xd0]
push eax
mov ecx, dword [0x46f2b0]
push ecx
push 0x4818d0
lea edx, [ebp - 0x23c]
push edx
call fcn.0045b306
add esp, 0x10
push 0
push 0
lea ecx, [ebp - 0x23c]
call fcn.0040dff0
push eax
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc4
call fcn.0040dff0
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov dword [ebp - 0x2cc], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2bc]
call fcn.00460acc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x27c]
call fcn.0046051a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.0046051a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0046051a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x258]
call fcn.0046051a
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0046051a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.0046051a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x23c]
call fcn.0046051a
mov eax, dword [ebp - 0x2cc]
jmp 0x41b82b
mov eax, dword [0x46f2b0]
push eax
push 0x4818e0
lea ecx, [ebp - 0x240]
push ecx
call fcn.0045b306
add esp, 0xc
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0x70]
push eax
push 0x4818e4
lea ecx, [ebp - 0x23c]
push ecx
call fcn.0045b306
add esp, 0xc
lea ecx, [ebp - 0x23c]
call fcn.0040e000
mov esi, eax
lea ecx, [ebp - 0x240]
call fcn.0040e000
sub esi, eax
push esi
lea ecx, [ebp - 0x240]
call fcn.0040e000
push eax
lea ecx, [ebp - 0x23c]
call fcn.0045ada2
lea ecx, [ebp - 0x240]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x23c]
call fcn.004161a0
test eax, eax
jne 0x41aa08
lea ecx, [ebp - 0x240]
call fcn.0040e000
mov esi, eax
lea ecx, [ebp - 0x23c]
call fcn.0040e000
cmp esi, eax
jne 0x41aa08
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0x70]
push eax
push 0x4818e8
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc8
push ecx
call fcn.0045b306
add esp, 0xc
lea ecx, [ebp - 0x240]
call fcn.0040e000
push eax
push 0
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xc8
call fcn.0045ada2
push 1
mov edx, dword [ebp - 0x2e8]
add edx, 0xc8
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041cf87
mov dword [ebp - 0x2d0], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2bc]
call fcn.00460acc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x27c]
call fcn.0046051a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.0046051a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0046051a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x258]
call fcn.0046051a
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0046051a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.0046051a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x23c]
call fcn.0046051a
mov eax, dword [ebp - 0x2d0]
jmp 0x41b82b
mov eax, dword [0x46f2b4]
push eax
push 0x4818ec
lea ecx, [ebp - 0x240]
push ecx
call fcn.0045b306
add esp, 0xc
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0x70]
push eax
push 0x4818f0
lea ecx, [ebp - 0x23c]
push ecx
call fcn.0045b306
add esp, 0xc
push 0x2d
lea ecx, [ebp - 0x23c]
call fcn.0045afa3
mov dword [ebp - 0x280], eax
mov edx, dword [ebp - 0x280]
add edx, 1
push edx
push 0
lea ecx, [ebp - 0x23c]
call fcn.0045ada2
lea ecx, [ebp - 0x240]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x23c]
call fcn.004161a0
test eax, eax
jne 0x41aab1
lea ecx, [ebp - 0x240]
call fcn.0040e000
mov esi, eax
lea ecx, [ebp - 0x23c]
call fcn.0040e000
cmp esi, eax
jne 0x41aab1
mov eax, dword [ebp - 0x2e8]
mov dword [eax + 0xc0], 1
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xd0
call fcn.0040dff0
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x41aae9
push 0
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xd0
push ecx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041cf87
jmp 0x41ab03
push 0
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xd0
call fcn.0040dff0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xd4
call fcn.0040dff0
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x41ab39
push 0
mov ecx, dword [ebp - 0x2e8]
add ecx, 0xd4
call fcn.0040dff0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push 0x104
lea edx, [ebp - 0x234]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x264]
call fcn.004606a3
push 0x5c
lea ecx, [ebp - 0x264]
call fcn.0045afa3
mov dword [ebp - 0x2a8], eax
lea ecx, [ebp - 0x264]
call fcn.0040e000
sub eax, dword [ebp - 0x2a8]
push eax
mov ecx, dword [ebp - 0x2a8]
push ecx
lea ecx, [ebp - 0x264]
call fcn.0045ada2
push 0
push 0
lea edx, [ebp - 0x234]
push edx
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
lea ecx, [ebp - 0x2bc]
call fcn.00460e83
mov dword [ebp - 0x260], eax
mov eax, dword [ebp - 0x260]
push eax
call fcn.00460a43
add esp, 4
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
mov dword [ebp - 0x278], ecx
mov edx, dword [ebp - 0x260]
push edx
push 0
mov eax, dword [ebp - 0x278]
push eax
call fcn.0044ce10
add esp, 0xc
mov ecx, dword [ebp - 0x260]
push ecx
mov edx, dword [ebp - 0x278]
push edx
lea ecx, [ebp - 0x2bc]
call fcn.00460ca6
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
push 0x104
push 0
lea eax, [ebp - 0x12c]
push eax
call fcn.0044ce10
add esp, 0xc
mov ecx, dword [0x46f2c8]
push ecx
call fcn.0044d290
add esp, 4
push eax
mov edx, dword [ebp - 0x260]
mov eax, dword [ebp - 0x278]
lea ecx, [eax + edx - 0x62]
push ecx
lea edx, [ebp - 0x12c]
push edx
call fcn.0044ce70
add esp, 0xc
mov dword [ebp - 0x24], 0
mov eax, dword [0x46f2c8]
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.0044d6c0
add esp, 8
test eax, eax
jne 0x41b5b1
mov edx, dword [ebp - 0x260]
sub edx, 0x5e
mov dword [ebp - 0x244], edx
push 4
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x244]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.0041d0ec
mov dword [ebp - 0x2ac], eax
mov ecx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x2ac]
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x260]
sub edx, 0x5a
mov dword [ebp - 0x244], edx
push 2
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x244]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.0041d0ec
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x28]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x25c], 0
jmp 0x41ad0f
mov edx, dword [ebp - 0x25c]
add edx, 1
mov dword [ebp - 0x25c], edx
cmp dword [ebp - 0x25c], 8
jge 0x41ad6a
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x260]
lea edx, [ecx + eax*4 - 0x58]
mov dword [ebp - 0x244], edx
push 4
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x244]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.0041d0ec
mov ecx, dword [ebp - 0x25c]
mov dword [ebp + ecx*4 - 0x2a4], eax
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x24]
add eax, dword [ebp + edx*4 - 0x2a4]
mov dword [ebp - 0x24], eax
jmp 0x41ad00
mov ecx, dword [ebp - 0x260]
sub ecx, 0x38
mov dword [ebp - 0x244], ecx
push 4
mov edx, dword [ebp - 0x278]
add edx, dword [ebp - 0x244]
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041d0ec
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x284]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x260]
sub ecx, 0x34
mov dword [ebp - 0x244], ecx
push 4
mov edx, dword [ebp - 0x278]
add edx, dword [ebp - 0x244]
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041d0ec
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x130]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x25c], 0
jmp 0x41adfb
mov ecx, dword [ebp - 0x25c]
add ecx, 1
mov dword [ebp - 0x25c], ecx
cmp dword [ebp - 0x25c], 4
jge 0x41ae56
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x260]
lea ecx, [eax + edx*4 - 0x30]
mov dword [ebp - 0x244], ecx
push 4
mov edx, dword [ebp - 0x278]
add edx, dword [ebp - 0x244]
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041d0ec
mov ecx, dword [ebp - 0x25c]
mov dword [ebp + ecx*4 - 0x254], eax
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x24]
add eax, dword [ebp + edx*4 - 0x254]
mov dword [ebp - 0x24], eax
jmp 0x41adec
mov dword [ebp - 0x25c], 0
jmp 0x41ae71
mov ecx, dword [ebp - 0x25c]
add ecx, 1
mov dword [ebp - 0x25c], ecx
cmp dword [ebp - 0x25c], 4
jge 0x41aecc
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x260]
lea ecx, [eax + edx*4 - 0x20]
mov dword [ebp - 0x244], ecx
push 4
mov edx, dword [ebp - 0x278]
add edx, dword [ebp - 0x244]
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041d0ec
mov ecx, dword [ebp - 0x25c]
mov dword [ebp + ecx*4 - 0x274], eax
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x24]
add eax, dword [ebp + edx*4 - 0x274]
mov dword [ebp - 0x24], eax
jmp 0x41ae62
mov dword [ebp - 0x25c], 0
jmp 0x41aee7
mov ecx, dword [ebp - 0x25c]
add ecx, 1
mov dword [ebp - 0x25c], ecx
cmp dword [ebp - 0x25c], 4
jge 0x41af3c
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x260]
lea ecx, [eax + edx*4 - 0x10]
mov dword [ebp - 0x244], ecx
push 4
mov edx, dword [ebp - 0x278]
add edx, dword [ebp - 0x244]
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041d0ec
mov ecx, dword [ebp - 0x25c]
mov dword [ebp + ecx*4 - 0x20], eax
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x24]
add eax, dword [ebp + edx*4 - 0x20]
mov dword [ebp - 0x24], eax
jmp 0x41aed8
mov ecx, dword [0x46f2c0]
push ecx
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0xd0]
push eax
push 0x4818f4
lea ecx, [ebp - 0x238]
push ecx
call fcn.0045b306
add esp, 0x10
lea edx, [ebp - 0x238]
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov eax, dword [ebp - 0x2ac]
push eax
mov ecx, dword [ebp - 0x260]
mov edx, dword [ebp - 0x278]
lea eax, [edx + ecx - 0x62]
sub eax, dword [ebp - 0x24]
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov ecx, dword [0x46f2bc]
push ecx
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0xd0]
push eax
push 0x4818fc
lea ecx, [ebp - 0x238]
push ecx
call fcn.0045b306
add esp, 0x10
lea edx, [ebp - 0x238]
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x260]
mov edx, dword [ebp - 0x278]
lea eax, [edx + ecx - 0x62]
sub eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x2ac]
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov ecx, dword [ebp - 0x260]
sub ecx, 0x62
sub ecx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x2ac]
add ecx, dword [ebp - 0x28]
mov dword [ebp - 0x244], ecx
mov dword [ebp - 0x25c], 0
jmp 0x41b0a1
mov edx, dword [ebp - 0x25c]
add edx, 1
mov dword [ebp - 0x25c], edx
cmp dword [ebp - 0x25c], 8
jge 0x41b17e
mov eax, dword [ebp - 0x25c]
cmp dword [ebp + eax*4 - 0x2a4], 0
jne 0x41b0c0
jmp 0x41b092
mov ecx, dword [ebp - 0x25c]
add ecx, 1
push ecx
mov edx, dword [0x46f28c]
push edx
mov eax, dword [ebp - 0x2e8]
mov ecx, dword [eax + 0xd0]
push ecx
push 0x481904
lea edx, [ebp - 0x238]
push edx
call fcn.0045b306
add esp, 0x14
lea eax, [ebp - 0x238]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp + ecx*4 - 0x2a4]
push edx
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x244]
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x244]
add edx, dword [ebp + ecx*4 - 0x2a4]
mov dword [ebp - 0x244], edx
jmp 0x41b092
mov eax, dword [0x46f29c]
push eax
mov ecx, dword [ebp - 0x2e8]
mov edx, dword [ecx + 0xd0]
push edx
push 0x48190c
lea eax, [ebp - 0x238]
push eax
call fcn.0045b306
add esp, 0x10
lea ecx, [ebp - 0x238]
push ecx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov edx, dword [ebp - 0x284]
push edx
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x244]
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov ecx, dword [ebp - 0x244]
add ecx, dword [ebp - 0x284]
mov dword [ebp - 0x244], ecx
mov edx, dword [0x46f2a4]
push edx
mov eax, dword [ebp - 0x2e8]
mov ecx, dword [eax + 0xd0]
push ecx
push 0x481914
lea edx, [ebp - 0x238]
push edx
call fcn.0045b306
add esp, 0x10
lea eax, [ebp - 0x238]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov ecx, dword [ebp - 0x130]
push ecx
mov edx, dword [ebp - 0x278]
add edx, dword [ebp - 0x244]
push edx
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov eax, dword [ebp - 0x244]
add eax, dword [ebp - 0x130]
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x25c], 0
jmp 0x41b2da
mov ecx, dword [ebp - 0x25c]
add ecx, 1
mov dword [ebp - 0x25c], ecx
cmp dword [ebp - 0x25c], 4
jge 0x41b3b7
mov edx, dword [ebp - 0x25c]
cmp dword [ebp + edx*4 - 0x254], 0
jne 0x41b2f9
jmp 0x41b2cb
mov eax, dword [ebp - 0x25c]
add eax, 1
push eax
mov ecx, dword [0x46f290]
push ecx
mov edx, dword [ebp - 0x2e8]
mov eax, dword [edx + 0xd0]
push eax
push 0x48191c
lea ecx, [ebp - 0x238]
push ecx
call fcn.0045b306
add esp, 0x14
lea edx, [ebp - 0x238]
push edx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp + eax*4 - 0x254]
push ecx
mov edx, dword [ebp - 0x278]
add edx, dword [ebp - 0x244]
push edx
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x244]
add ecx, dword [ebp + eax*4 - 0x254]
mov dword [ebp - 0x244], ecx
jmp 0x41b2cb
mov dword [ebp - 0x25c], 0
jmp 0x41b3d2
mov edx, dword [ebp - 0x25c]
add edx, 1
mov dword [ebp - 0x25c], edx
cmp dword [ebp - 0x25c], 4
jge 0x41b4af
mov eax, dword [ebp - 0x25c]
cmp dword [ebp + eax*4 - 0x274], 0
jne 0x41b3f1
jmp 0x41b3c3
mov ecx, dword [ebp - 0x25c]
add ecx, 1
push ecx
mov edx, dword [0x46f294]
push edx
mov eax, dword [ebp - 0x2e8]
mov ecx, dword [eax + 0xd0]
push ecx
push 0x481924
lea edx, [ebp - 0x238]
push edx
call fcn.0045b306
add esp, 0x14
lea eax, [ebp - 0x238]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp + ecx*4 - 0x274]
push edx
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x244]
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ebp - 0x244]
add edx, dword [ebp + ecx*4 - 0x274]
mov dword [ebp - 0x244], edx
jmp 0x41b3c3
mov dword [ebp - 0x25c], 0
jmp 0x41b4ca
mov eax, dword [ebp - 0x25c]
add eax, 1
mov dword [ebp - 0x25c], eax
cmp dword [ebp - 0x25c], 4
jge 0x41b59d
mov ecx, dword [ebp - 0x25c]
cmp dword [ebp + ecx*4 - 0x20], 0
jne 0x41b4e6
jmp 0x41b4bb
mov edx, dword [ebp - 0x25c]
add edx, 1
push edx
mov eax, dword [0x46f298]
push eax
mov ecx, dword [ebp - 0x2e8]
mov edx, dword [ecx + 0xd0]
push edx
push 0x48192c
lea eax, [ebp - 0x238]
push eax
call fcn.0045b306
add esp, 0x14
lea ecx, [ebp - 0x238]
push ecx
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp + edx*4 - 0x20]
push eax
mov ecx, dword [ebp - 0x278]
add ecx, dword [ebp - 0x244]
push ecx
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov edx, dword [ebp - 0x25c]
mov eax, dword [ebp - 0x244]
add eax, dword [ebp + edx*4 - 0x20]
mov dword [ebp - 0x244], eax
jmp 0x41b4bb
mov ecx, dword [ebp - 0x260]
sub ecx, dword [ebp - 0x24]
mov dword [ebp - 0x260], ecx
jmp 0x41b6f5
mov edx, dword [0x46f2c4]
push edx
mov eax, dword [ebp - 0x264]
push eax
push 0x481934
lea ecx, [ebp - 0x238]
push ecx
call fcn.0045b306
add esp, 0x10
mov edx, dword [0x46f2c0]
push edx
mov eax, dword [ebp - 0x2e8]
mov ecx, dword [eax + 0xd0]
push ecx
push 0x48193c
lea edx, [ebp - 0x258]
push edx
call fcn.0045b306
add esp, 0x10
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x41b6d5
mov eax, dword [ebp - 0x278]
mov dword [ebp - 0x2d8], eax
mov ecx, dword [ebp - 0x2d8]
push ecx
call fcn.00460a6c
add esp, 4
mov dword [ebp - 0x278], 0
push 0
push 0
push str.There_is_no_dll_file_
call fcn.00464203
mov dword [ebp - 0x2dc], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2bc]
call fcn.00460acc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x27c]
call fcn.0046051a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.0046051a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0046051a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x258]
call fcn.0046051a
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0046051a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.0046051a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x23c]
call fcn.0046051a
mov eax, dword [ebp - 0x2dc]
jmp 0x41b82b
push 1
lea ecx, [ebp - 0x258]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov edx, dword [0x46f2b8]
push edx
mov eax, dword [ebp - 0x2e8]
mov ecx, dword [eax + 0xd0]
push ecx
push 0x48195c
lea edx, [ebp - 0x238]
push edx
call fcn.0045b306
add esp, 0x10
lea eax, [ebp - 0x238]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.0041c37c
push 0
push 0x1001
lea ecx, [ebp - 0x238]
call fcn.0040dff0
push eax
lea ecx, [ebp - 0x2bc]
call fcn.00460b89
push 0
lea ecx, [ebp - 0x2bc]
call fcn.00460e57
mov ecx, dword [ebp - 0x260]
push ecx
mov edx, dword [ebp - 0x278]
push edx
lea ecx, [ebp - 0x2bc]
call fcn.00460ce0
lea ecx, [ebp - 0x2bc]
call fcn.00460da4
mov eax, dword [ebp - 0x278]
mov dword [ebp - 0x2e0], eax
mov ecx, dword [ebp - 0x2e0]
push ecx
call fcn.00460a6c
add esp, 4
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x2e4], 1
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2bc]
call fcn.00460acc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x27c]
call fcn.0046051a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.0046051a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0046051a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x258]
call fcn.0046051a
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0046051a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x240]
call fcn.0046051a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x23c]
call fcn.0046051a
mov eax, dword [ebp - 0x2e4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret