Function at 0x1002f640
Capabilities:
Copy file
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10073579
mov eax, dword fs:[0]
push eax
mov eax, 0x239c
call fcn.1004d260
mov eax, dword [0x10093054]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x22ec], ecx
push 0x1007a298
mov ecx, dword [ebp + 0xc]
call fcn.10021b30
movzx eax, al
test eax, eax
je 0x1002f8bd
push 0x1007a2a0
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.1002f610
movzx ecx, al
test ecx, ecx
je 0x1002f8bd
push str.pretest
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov dword [ebp - 0x230c], eax
mov dword [ebp - 0x22f4], 0
jmp 0x1002f6da
mov edx, dword [ebp - 0x22f4]
add edx, 1
mov dword [ebp - 0x22f4], edx
mov ecx, dword [ebp - 0x230c]
call fcn.1000db30
cmp dword [ebp - 0x22f4], eax
jae 0x1002f8bb
lfence
mov eax, dword [ebp - 0x22f4]
push eax
mov ecx, dword [ebp - 0x230c]
call fcn.1002e160
mov ecx, eax
call fcn.10021d50
movzx ecx, al
test ecx, ecx
jne 0x1002f716
jmp 0x1002f6cb
lea ecx, [ebp - 0x20e8]
call fcn.10008210
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x22f4]
push edx
mov ecx, dword [ebp - 0x230c]
call fcn.1002e160
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x2130]
call fcn.100081d0
mov byte [ebp - 4], 1
lea eax, [ebp - 0x20e8]
push eax
push 0xfde9
lea ecx, [ebp - 0x2130]
push ecx
lea edx, [ebp - 0x2208]
push edx
call fcn.10027110
add esp, 0xc
mov dword [ebp - 0x2384], eax
mov eax, dword [ebp - 0x2384]
mov dword [ebp - 0x2380], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2380]
push ecx
mov ecx, dword [ebp - 0x22ec]
call fcn.1002e710
mov dword [ebp - 0x2398], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2208]
call fcn.10018fb0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x2130]
call fcn.100080b0
push 0x1000
lea edx, [ebp - 0x2010]
push edx
lea ecx, [ebp - 0x20e8]
call fcn.10007db0
push eax
mov ecx, dword [ebp - 0x22ec]
call fcn.10030e60
movzx eax, al
test eax, eax
jne 0x1002f8a4
mov ecx, dword [ebp - 0x22f4]
push ecx
mov ecx, dword [ebp - 0x230c]
call fcn.1002e160
mov ecx, eax
call fcn.10021ab0
push eax
push str.Request_parm_error:
push 0x26e
push 0x1007a2e0
lea ecx, [ebp - 0x23a8]
call fcn.10005640
mov dword [ebp - 0x2378], eax
mov edx, dword [ebp - 0x2378]
mov dword [ebp - 0x2374], edx
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x2374]
call fcn.10005c50
push eax
call fcn.1000ade0
add esp, 8
push eax
call fcn.1000ade0
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x23a8]
call fcn.10005be0
push 0x1002cff0
mov eax, dword [ebp - 0x22f4]
push eax
mov ecx, dword [ebp - 0x230c]
call fcn.1002e160
mov ecx, eax
call fcn.10021ab0
push eax
push str.Request_parm_error__file:
push 0x100947d8
call fcn.1000ade0
add esp, 8
push eax
call fcn.1000ade0
add esp, 8
mov ecx, eax
call fcn.1002e0b0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20e8]
call fcn.100080b0
jmp 0x1002f6cb
jmp 0x1002f8db
push 0x1002cff0
push str.no_pretest_section__continue.
push 0x100947d8
call fcn.1000ade0
add esp, 8
mov ecx, eax
call fcn.1002e0b0
push 0x1007a374
mov ecx, dword [ebp + 0xc]
call fcn.10021b30
movzx ecx, al
test ecx, ecx
je 0x1002f9b3
push 0x1007a37c
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.100258b0
movzx edx, al
test edx, edx
je 0x1002f9b3
push 0x1007a384
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.1000db30
mov dword [ebp - 0x2310], eax
cmp dword [ebp - 0x2310], 0
je 0x1002f969
mov eax, dword [ebp - 0x22ec]
mov ecx, dword [eax + 0xa0]
call fcn.10040650
movzx ecx, al
test ecx, ecx
jne 0x1002f969
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [ebp - 0x2310]
sub edx, 1
mov dword [ebp - 0x2310], edx
jmp 0x1002f92c
mov eax, dword [ebp - 0x22ec]
mov ecx, dword [eax + 0xa0]
call fcn.10040650
movzx ecx, al
test ecx, ecx
jne 0x1002f9a6
push 0x1002cff0
push str.space_not_loaded...
push 0x100947d8
call fcn.1000ade0
add esp, 8
mov ecx, eax
call fcn.1002e0b0
xor al, al
jmp 0x10030ac3
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1002f9d1
push 0x1002cff0
push str.no_wait_section__continue.
push 0x100947d8
call fcn.1000ade0
add esp, 8
mov ecx, eax
call fcn.1002e0b0
push 0x1007a3bc
mov ecx, dword [ebp + 0xc]
call fcn.10021b30
movzx edx, al
test edx, edx
je 0x1002fa00
push 0x1007a3c4
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.1002f610
movzx eax, al
test eax, eax
jne 0x1002fa7f
push 0x1007a3cc
mov ecx, dword [ebp + 0xc]
call fcn.10021b30
movzx ecx, al
test ecx, ecx
je 0x1002fa5a
push 0x1007a3d8
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.100258b0
movzx edx, al
test edx, edx
je 0x1002fa5a
push 0x1007a3e4
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.1000db30
mov dword [ebp - 0x2370], eax
imul eax, dword [ebp - 0x2370], 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x1002cff0
push str.no_test_section__return.
push 0x100947d8
call fcn.1000ade0
add esp, 8
mov ecx, eax
call fcn.1002e0b0
xor al, al
jmp 0x10030ac3
push str.test
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov dword [ebp - 0x22e8], eax
lea ecx, [ebp - 0x2028]
call fcn.10018d20
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x2118]
call fcn.10018d20
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20a0]
call fcn.10018d20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2088]
call fcn.10008210
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x2058]
call fcn.10008210
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x20d0]
call fcn.10018d20
mov byte [ebp - 4], 9
xorps xmm0, xmm0
movlpd qword [ebp - 0x2300], xmm0
mov dword [ebp - 0x239c], 0
mov dword [ebp - 0x2320], 0
mov byte [ebp - 0x22ed], 1
lea ecx, [ebp - 0x232c]
call fcn.1002d9e0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2040]
call fcn.10018d20
mov byte [ebp - 4], 0xb
push 0x1007a414
mov ecx, dword [ebp + 0xc]
call fcn.10021b30
movzx ecx, al
test ecx, ecx
je 0x1002fc26
push 0x1007a420
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.10021d50
movzx edx, al
test edx, edx
je 0x1002fc26
push str.outputdir
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x2148]
call fcn.100081d0
mov byte [ebp - 4], 0xc
push 0xfde9
lea eax, [ebp - 0x2148]
push eax
lea ecx, [ebp - 0x2220]
push ecx
call fcn.10027110
add esp, 0xc
mov dword [ebp - 0x236c], eax
mov edx, dword [ebp - 0x236c]
push edx
lea ecx, [ebp - 0x2040]
call fcn.1002e030
lea ecx, [ebp - 0x2220]
call fcn.10018fb0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2148]
call fcn.100080b0
lea ecx, [ebp - 0x21a8]
call fcn.10018e20
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x2300]
push eax
lea ecx, [ebp - 0x2040]
push ecx
lea ecx, [ebp - 0x21a8]
call fcn.10019650
push 0
lea ecx, [ebp - 0x2040]
call fcn.100238a0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x21a8]
call fcn.1002dfa0
mov dword [ebp - 0x22e4], 0
jmp 0x1002fc41
mov edx, dword [ebp - 0x22e4]
add edx, 1
mov dword [ebp - 0x22e4], edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1000db30
cmp dword [ebp - 0x22e4], eax
jae 0x100305eb
lfence
push 0x1007a438
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx ecx, al
test ecx, ecx
je 0x1002fd24
lfence
push 0x1007a440
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx eax, al
test eax, eax
je 0x1002fd24
lfence
push 0x1007a444
mov ecx, dword [ebp - 0x22e4]
push ecx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx edx, al
test edx, edx
je 0x1002fd24
lfence
push 0x1007a450
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx ecx, al
test ecx, ecx
je 0x1002fd24
lfence
push str.check
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx eax, al
test eax, eax
jne 0x1002fd29
jmp 0x1002fc32
push 0x1007a460
mov ecx, dword [ebp - 0x22e4]
push ecx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx edx, al
test edx, edx
je 0x1002fe71
push 0x1007a468
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021d50
movzx ecx, al
test ecx, ecx
je 0x1002fe71
push 0x1007a470
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x2190]
call fcn.100081d0
mov byte [ebp - 4], 0xe
push 0x1002cff0
push 0
push 0xfde9
lea eax, [ebp - 0x2190]
push eax
lea ecx, [ebp - 0x2238]
push ecx
call fcn.10027110
add esp, 0xc
mov dword [ebp - 0x2368], eax
mov edx, dword [ebp - 0x2368]
mov dword [ebp - 0x2364], edx
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x2364]
push eax
lea ecx, [ebp - 0x22e0]
push ecx
call fcn.10027de0
add esp, 0xc
mov dword [ebp - 0x2360], eax
mov edx, dword [ebp - 0x2360]
mov dword [ebp - 0x235c], edx
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x235c]
push eax
push str.name:
push 0x100947d8
call fcn.1000ade0
add esp, 8
push eax
call fcn.1000a920
add esp, 8
mov ecx, eax
call fcn.1002e0b0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x22e0]
call fcn.100080b0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x2238]
call fcn.10018fb0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2190]
call fcn.100080b0
push 0x1007a480
mov ecx, dword [ebp - 0x22e4]
push ecx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx edx, al
test edx, edx
je 0x1002ff4e
push 0x1007a488
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021d50
movzx ecx, al
test ecx, ecx
je 0x1002ff4e
push 0x1007a490
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x2178]
call fcn.100081d0
mov byte [ebp - 4], 0x11
push 0xfde9
lea eax, [ebp - 0x2178]
push eax
lea ecx, [ebp - 0x21f0]
push ecx
call fcn.10027110
add esp, 0xc
mov dword [ebp - 0x2358], eax
mov edx, dword [ebp - 0x2358]
push edx
lea ecx, [ebp - 0x2028]
call fcn.1002e030
lea ecx, [ebp - 0x21f0]
call fcn.10018fb0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2178]
call fcn.100080b0
jmp 0x1002ff59
lea ecx, [ebp - 0x2028]
call fcn.100336a0
push 0x1007a498
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021d50
movzx ecx, al
test ecx, ecx
je 0x1003000d
push 0x1007a49c
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x2160]
call fcn.100081d0
mov byte [ebp - 4], 0x12
push 0xfde9
lea eax, [ebp - 0x2160]
push eax
lea ecx, [ebp - 0x2250]
push ecx
call fcn.10027110
add esp, 0xc
mov dword [ebp - 0x2354], eax
mov edx, dword [ebp - 0x2354]
push edx
lea ecx, [ebp - 0x20a0]
call fcn.1002e030
lea ecx, [ebp - 0x2250]
call fcn.10018fb0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2160]
call fcn.100080b0
jmp 0x10030012
jmp 0x1002fc32
push 0x1007a4a0
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021d50
movzx ecx, al
test ecx, ecx
je 0x10030071
push 0x1007a4ac
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x2088]
call fcn.10008080
jmp 0x10030076
jmp 0x1002fc32
push 0x1007a4b8
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx ecx, al
test ecx, ecx
je 0x100300fa
push 0x1007a4c8
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021d50
movzx eax, al
test eax, eax
je 0x100300fa
push str.ref_space_id
mov ecx, dword [ebp - 0x22e4]
push ecx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x2058]
call fcn.10008080
jmp 0x10030105
lea ecx, [ebp - 0x2058]
call fcn.10007de0
push 0x1007a4e8
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021d50
movzx eax, al
test eax, eax
je 0x100301b9
push str.output
mov ecx, dword [ebp - 0x22e4]
push ecx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x21c0]
call fcn.100081d0
mov byte [ebp - 4], 0x13
push 0xfde9
lea edx, [ebp - 0x21c0]
push edx
lea eax, [ebp - 0x2268]
push eax
call fcn.10027110
add esp, 0xc
mov dword [ebp - 0x2350], eax
mov ecx, dword [ebp - 0x2350]
push ecx
lea ecx, [ebp - 0x20d0]
call fcn.1002e030
lea ecx, [ebp - 0x2268]
call fcn.10018fb0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x21c0]
call fcn.100080b0
jmp 0x100301be
jmp 0x1002fc32
lea ecx, [ebp - 0x2088]
call fcn.1000fa00
test eax, eax
je 0x10030206
push 0x1007a4f8
lea edx, [ebp - 0x2088]
push edx
call fcn.1000aa00
add esp, 8
movzx eax, al
test eax, eax
je 0x10030206
lea ecx, [ebp - 0x2088]
push ecx
call fcn.10024cc0
add esp, 4
cdq
mov dword [ebp - 0x2300], eax
mov dword [ebp - 0x22fc], edx
jmp 0x1003025b
lea ecx, [ebp - 0x2058]
call fcn.1000fa00
test eax, eax
je 0x10030250
push 0x1007a4fc
lea edx, [ebp - 0x2058]
push edx
call fcn.1000aa00
add esp, 8
movzx eax, al
test eax, eax
je 0x10030250
lea ecx, [ebp - 0x2058]
push ecx
call fcn.10024cc0
add esp, 4
neg eax
cdq
mov dword [ebp - 0x2300], eax
mov dword [ebp - 0x22fc], edx
jmp 0x1003025b
xorps xmm0, xmm0
movlpd qword [ebp - 0x2300], xmm0
lea ecx, [ebp - 0x2028]
call fcn.10033810
movzx edx, al
test edx, edx
jne 0x1003050c
lea eax, [ebp - 0x2118]
push eax
lea ecx, [ebp - 0x2028]
push ecx
call fcn.1002c380
add esp, 8
movzx edx, al
test edx, edx
je 0x1003050c
lea ecx, [ebp - 0x2070]
call fcn.10008210
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x2070]
push eax
lea ecx, [ebp - 0x2028]
push ecx
mov ecx, dword [ebp - 0x22ec]
call fcn.1002e710
mov dword [ebp - 0x2324], eax
cmp dword [ebp - 0x2324], 0
jne 0x100304b1
push 0x1000
lea edx, [ebp - 0x1010]
push edx
lea ecx, [ebp - 0x2070]
call fcn.10007db0
push eax
mov ecx, dword [ebp - 0x22ec]
call fcn.10030e60
movzx eax, al
test eax, eax
je 0x10030464
push 0x1007a500
mov ecx, dword [ebp - 0x22e4]
push ecx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx edx, al
test edx, edx
je 0x10030388
push 0x1007a508
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.100258b0
movzx ecx, al
test ecx, ecx
je 0x10030388
push str.wait
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.1000db30
mov dword [ebp - 0x234c], eax
imul eax, dword [ebp - 0x234c], 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0x232c]
push ecx
mov edx, dword [ebp - 0x2300]
push edx
lea eax, [ebp - 0x20d0]
push eax
mov ecx, dword [ebp - 0x22ec]
call fcn.1002e640
lea ecx, [ebp - 0x20a0]
push ecx
mov edx, dword [ebp - 0x22fc]
push edx
mov eax, dword [ebp - 0x2300]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x22ec]
call fcn.10030b20
movzx edx, al
mov dword [ebp - 0x2320], edx
push 0x1007a518
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx ecx, al
test ecx, ecx
je 0x10030462
push 0x1007a520
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.100258b0
movzx eax, al
test eax, eax
je 0x10030462
push 0x1007a528
mov ecx, dword [ebp - 0x22e4]
push ecx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.1000db30
mov dword [ebp - 0x237c], eax
imul edx, dword [ebp - 0x237c], 0x3e8
push edx
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1003049d
push 0x1002cff0
push str.set_policy_fail
push 0x100947d8
call fcn.1000ade0
add esp, 8
mov ecx, eax
call fcn.1002e0b0
mov byte [ebp - 0x22ed], 0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2070]
call fcn.100080b0
jmp 0x100305eb
lea eax, [ebp - 0x2028]
push eax
lea ecx, [ebp - 0x2118]
call fcn.1002e070
jmp 0x100304f8
push 0x1002cff0
mov ecx, dword [ebp - 0x2324]
push ecx
push str.open_file_fail:
push 0x100947d8
call fcn.1000ade0
add esp, 8
mov ecx, eax
call fcn.100079d0
mov ecx, eax
call fcn.1002e0b0
mov byte [ebp - 0x22ed], 0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2070]
call fcn.100080b0
jmp 0x100305eb
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2070]
call fcn.100080b0
jmp 0x100305e6
lea edx, [ebp - 0x232c]
push edx
mov eax, dword [ebp - 0x2300]
push eax
lea ecx, [ebp - 0x20d0]
push ecx
mov ecx, dword [ebp - 0x22ec]
call fcn.1002e640
lea edx, [ebp - 0x20a0]
push edx
mov eax, dword [ebp - 0x22fc]
push eax
mov ecx, dword [ebp - 0x2300]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x22ec]
call fcn.10030b20
movzx eax, al
mov dword [ebp - 0x2320], eax
push 0x1007a550
mov ecx, dword [ebp - 0x22e4]
push ecx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10021b30
movzx edx, al
test edx, edx
je 0x100305e6
push 0x1007a558
mov eax, dword [ebp - 0x22e4]
push eax
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.100258b0
movzx ecx, al
test ecx, ecx
je 0x100305e6
push str.waiturl
mov edx, dword [ebp - 0x22e4]
push edx
mov ecx, dword [ebp - 0x22e8]
call fcn.1002e160
mov ecx, eax
call fcn.10023940
mov ecx, eax
call fcn.1000db30
mov dword [ebp - 0x2348], eax
imul eax, dword [ebp - 0x2348], 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1002fc32
push 0x1007a568
mov ecx, dword [ebp + 0xc]
call fcn.10021b30
movzx ecx, al
test ecx, ecx
je 0x10030645
push 0x1007a574
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.100258b0
movzx edx, al
test edx, edx
je 0x10030645
push str.waitfinish
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.1000db30
mov dword [ebp - 0x2344], eax
imul eax, dword [ebp - 0x2344], 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0x2040]
call fcn.1000fa00
test eax, eax
je 0x100308bd
lea ecx, [ebp - 0x232c]
mov dword [ebp - 0x231c], ecx
lea edx, [ebp - 0x2314]
push edx
mov ecx, dword [ebp - 0x231c]
call fcn.100334a0
lea eax, [ebp - 0x2340]
push eax
mov ecx, dword [ebp - 0x231c]
call fcn.100334d0
jmp 0x10030695
lea ecx, [ebp - 0x2314]
call fcn.1002e1f0
lea ecx, [ebp - 0x2340]
push ecx
lea ecx, [ebp - 0x2314]
call fcn.1002e100
movzx edx, al
test edx, edx
je 0x100308bd
lea ecx, [ebp - 0x2314]
call fcn.100290a0
mov dword [ebp - 0x2308], eax
push 0x5c
mov ecx, dword [ebp - 0x2308]
call fcn.100238a0
push eax
call fcn.10050038
add esp, 8
mov dword [ebp - 0x22f8], eax
cmp dword [ebp - 0x22f8], 0
jne 0x10030704
push 0x2f
mov ecx, dword [ebp - 0x2308]
call fcn.100238a0
push eax
call fcn.10050038
add esp, 8
mov dword [ebp - 0x22f8], eax
cmp dword [ebp - 0x22f8], 0
jne 0x10030712
jmp 0x1003068a
mov eax, dword [ebp - 0x22f8]
add eax, 2
mov dword [ebp - 0x22f8], eax
mov ecx, dword [ebp - 0x22f8]
push ecx
push 0x1007a58c
lea edx, [ebp - 0x2040]
push edx
lea eax, [ebp - 0x2280]
push eax
call fcn.1002c400
add esp, 0xc
mov dword [ebp - 0x233c], eax
mov ecx, dword [ebp - 0x233c]
mov dword [ebp - 0x2338], ecx
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x2338]
push edx
lea eax, [ebp - 0x20b8]
push eax
call fcn.1002c3c0
add esp, 0xc
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x2280]
call fcn.10018fb0
lea ecx, [ebp - 0x20b8]
push ecx
mov edx, dword [ebp - 0x2308]
push edx
call fcn.1002c380
add esp, 8
movzx eax, al
test eax, eax
je 0x100308a9
push 0
lea ecx, [ebp - 0x20b8]
call fcn.100238a0
push eax
mov ecx, dword [ebp - 0x2308]
call fcn.100238a0
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x100308a9
push 0x1002cff0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.fail:
push 0
lea ecx, [ebp - 0x20b8]
push ecx
lea edx, [ebp - 0x22b0]
push edx
call fcn.10027de0
add esp, 0xc
mov dword [ebp - 0x2334], eax
mov eax, dword [ebp - 0x2334]
mov dword [ebp - 0x238c], eax
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x238c]
push ecx
push str._to
push 0
mov edx, dword [ebp - 0x2308]
push edx
lea eax, [ebp - 0x2298]
push eax
call fcn.10027de0
add esp, 0xc
mov dword [ebp - 0x2388], eax
mov ecx, dword [ebp - 0x2388]
mov dword [ebp - 0x2394], ecx
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x2394]
push edx
push str.copy
push 0x100947d8
call fcn.1000ade0
add esp, 8
push eax
call fcn.1000a920
add esp, 8
push eax
call fcn.1000ade0
add esp, 8
push eax
call fcn.1000a920
add esp, 8
push eax
call fcn.1000ade0
add esp, 8
mov ecx, eax
call fcn.10014670
mov ecx, eax
call fcn.1002e0b0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x2298]
call fcn.100080b0
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x22b0]
call fcn.100080b0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x20b8]
call fcn.10018fb0
jmp 0x1003068a
push 0x1007a5a8
mov ecx, dword [ebp + 0xc]
call fcn.10021b30
movzx eax, al
test eax, eax
je 0x10030a3b
push 0x1007a5b4
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov ecx, eax
call fcn.1002f610
movzx ecx, al
test ecx, ecx
je 0x10030a3b
push str.aftertest
mov ecx, dword [ebp + 0xc]
call fcn.10023940
mov dword [ebp - 0x2318], eax
mov dword [ebp - 0x2304], 0
jmp 0x10030922
mov edx, dword [ebp - 0x2304]
add edx, 1
mov dword [ebp - 0x2304], edx
mov ecx, dword [ebp - 0x2318]
call fcn.1000db30
cmp dword [ebp - 0x2304], eax
jae 0x10030a3b
lfence
mov eax, dword [ebp - 0x2304]
push eax
mov ecx, dword [ebp - 0x2318]
call fcn.1002e160
mov ecx, eax
call fcn.10021d50
movzx ecx, al
test ecx, ecx
jne 0x1003095e
jmp 0x10030913
lea ecx, [ebp - 0x2100]
call fcn.10008210
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x2304]
push edx
mov ecx, dword [ebp - 0x2318]
call fcn.1002e160
mov ecx, eax
call fcn.10021ab0
push eax
lea ecx, [ebp - 0x21d8]
call fcn.100081d0
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x2100]
push eax
push 0xfde9
lea ecx, [ebp - 0x21d8]
push ecx
lea edx, [ebp - 0x22c8]
push edx
call fcn.10027110
add esp, 0xc
mov dword [ebp - 0x2330], eax
mov eax, dword [ebp - 0x2330]
mov dword [ebp - 0x2390], eax
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x2390]
push ecx
mov ecx, dword [ebp - 0x22ec]
call fcn.1002e710
mov dword [ebp - 0x23a0], eax
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x22c8]
call fcn.10018fb0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x21d8]
call fcn.100080b0
push 0x1000
lea edx, [ebp - 0x2010]
push edx
lea ecx, [ebp - 0x2100]
call fcn.10007db0
push eax
mov ecx, dword [ebp - 0x22ec]
call fcn.10030e60
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2100]
call fcn.100080b0
jmp 0x10030913
mov byte [ebp - 0x22ee], 1
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2040]
call fcn.10018fb0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x232c]
call fcn.1002deb0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x20d0]
call fcn.10018fb0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x2058]
call fcn.100080b0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2088]
call fcn.100080b0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20a0]
call fcn.10018fb0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2118]
call fcn.10018fb0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2028]
call fcn.10018fb0
mov al, byte [ebp - 0x22ee]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1004ce45
mov esp, ebp
pop ebp
ret 8