Function at 0x100157d0
Capabilities:
Check if file exists
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101d4c89
mov eax, dword fs:[0]
push eax
sub esp, 0xa10
mov eax, dword [0x10269114]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x96c], 1
push 0x208
push 0
lea eax, [ebp - 0x4a0]
push eax
call fcn.1004e550
add esp, 0xc
push 0x208
push 0
lea ecx, [ebp - 0x298]
push ecx
call fcn.1004e550
add esp, 0xc
push 0x208
push 0
lea edx, [ebp - 0x6a8]
push edx
call fcn.1004e550
add esp, 0xc
push 0x80
push 0
lea eax, [ebp - 0x90]
push eax
call fcn.1004e550
add esp, 0xc
lea ecx, [ebp - 0x7b0]
call fcn.10008dd0
mov dword [ebp - 4], 0
push 0x101dac2c
mov ecx, 0x1026e8c8
call fcn.1000b660
push 0x101dac2c
mov ecx, 0x1026e8e0
call fcn.1000b660
mov ecx, dword [ebp + 0xc]
mov dword [0x1026e8f8], ecx
mov edx, dword [ebp + 0x14]
mov dword [0x1026e8fc], edx
mov eax, dword [ebp + 0x10]
mov dword [0x1026e900], eax
lea ecx, [ebp - 0x4a0]
push ecx
call fcn.10016430
lea edx, [ebp - 0x298]
push edx
call fcn.10016430
lea eax, [ebp - 0x6a8]
push eax
call fcn.10016430
lea ecx, [ebp - 0x90]
push ecx
call fcn.10016430
lea edx, [ebp - 0x4a0]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x100158f9
lea eax, [ebp - 0x298]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
jne 0x100158fe
jmp 0x10016014
lea ecx, [ebp - 0x780]
call fcn.100086f0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x798]
call fcn.100086f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x708]
call fcn.100086f0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x750]
call fcn.100086f0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x768]
call fcn.100086f0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x7c8]
call fcn.100086f0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x4a0]
push ecx
lea ecx, [ebp - 0x6c0]
call fcn.100088b0
mov byte [ebp - 4], 7
lea edx, [ebp - 0x298]
push edx
lea ecx, [ebp - 0x828]
call fcn.100088b0
mov byte [ebp - 4], 8
lea eax, [ebp - 0x828]
push eax
lea ecx, [ebp - 0x8b8]
push ecx
call fcn.1002b650
add esp, 8
mov dword [ebp - 0x920], eax
mov edx, dword [ebp - 0x920]
mov dword [ebp - 0x924], edx
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x924]
push eax
lea ecx, [ebp - 0x780]
call fcn.1000b580
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x8b8]
call fcn.1000a990
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x828]
call fcn.1000a9f0
lea ecx, [ebp - 0x6a8]
push ecx
lea ecx, [ebp - 0x840]
call fcn.100088b0
mov byte [ebp - 4], 0xa
lea edx, [ebp - 0x840]
push edx
lea eax, [ebp - 0x8d0]
push eax
call fcn.1002b650
add esp, 8
mov dword [ebp - 0x928], eax
mov ecx, dword [ebp - 0x928]
mov dword [ebp - 0x92c], ecx
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x92c]
push edx
lea ecx, [ebp - 0x798]
call fcn.1000b580
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x8d0]
call fcn.1000a990
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x840]
call fcn.1000a9f0
lea eax, [ebp - 0x90]
push eax
lea ecx, [ebp - 0x858]
call fcn.100088b0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x858]
push ecx
lea edx, [ebp - 0x8e8]
push edx
call fcn.1002b650
add esp, 8
mov dword [ebp - 0x930], eax
mov eax, dword [ebp - 0x930]
mov dword [ebp - 0x954], eax
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x954]
push ecx
lea ecx, [ebp - 0x768]
call fcn.1000b580
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x8e8]
call fcn.1000a990
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x858]
call fcn.1000a9f0
lea ecx, [ebp - 0x798]
call fcn.1000f580
push eax
call fcn.100516de
add esp, 4
mov dword [0x1026e840], eax
mov dword [0x1026e844], 0
lea ecx, [ebp - 0x738]
call fcn.100086f0
mov byte [ebp - 4], 0xe
lea edx, [ebp - 0x768]
push edx
push str.reqChannel:_3_r_nappId:nnPcClient_swbTF87Q_r_nbusi_type:bh_cbgxebflxglszsx_r_nversion:
lea eax, [ebp - 0x7e0]
push eax
call fcn.100020e0
add esp, 0xc
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x780]
push ecx
lea edx, [ebp - 0x918]
push edx
call fcn.10010ba0
add esp, 8
mov dword [ebp - 0x934], eax
mov eax, dword [ebp - 0x934]
mov dword [ebp - 0x960], eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x960]
call fcn.1000f580
push eax
lea ecx, [ebp - 0x870]
call fcn.10008420
mov byte [ebp - 4], 0x11
push 3
lea ecx, [ebp - 0x738]
push ecx
lea edx, [ebp - 0x7e0]
push edx
lea eax, [ebp - 0x870]
push eax
call fcn.1002ed60
add esp, 0x10
mov dword [ebp - 0x944], eax
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x870]
call fcn.1000a990
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x918]
call fcn.1000a990
lea ecx, [ebp - 0x7c8]
push ecx
lea edx, [ebp - 0x750]
push edx
lea eax, [ebp - 0x708]
push eax
lea ecx, [ebp - 0x738]
push ecx
lea edx, [ebp - 0x720]
push edx
call fcn.10012a90
add esp, 0x14
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x708]
push eax
lea ecx, [ebp - 0x900]
push ecx
call fcn.1002b920
add esp, 8
mov dword [ebp - 0x95c], eax
mov edx, dword [ebp - 0x95c]
mov dword [ebp - 0x958], edx
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x958]
push eax
lea ecx, [ebp - 0x7b0]
call fcn.1000b620
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x900]
call fcn.1000a9f0
lea ecx, [ebp - 0x6c0]
call fcn.1000f5a0
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x10015cd0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x720]
call fcn.1000a990
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x7e0]
call fcn.1000a990
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x738]
call fcn.1000a990
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x6c0]
call fcn.1000a9f0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x7c8]
call fcn.1000a990
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x768]
call fcn.1000a990
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x750]
call fcn.1000a990
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x708]
call fcn.1000a990
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x798]
call fcn.1000a990
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x780]
call fcn.1000a990
jmp 0x10016014
push str._skin.zip
lea ecx, [ebp - 0x6c0]
push ecx
lea edx, [ebp - 0x6f0]
push edx
call fcn.100023b0
add esp, 0xc
mov byte [ebp - 4], 0x14
push str._skinex.zip
lea eax, [ebp - 0x6c0]
push eax
lea ecx, [ebp - 0x7f8]
push ecx
call fcn.100023b0
add esp, 0xc
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x720]
call fcn.10010010
movzx edx, al
test edx, edx
jne 0x10015f4e
lea ecx, [ebp - 0x6d8]
call fcn.100086f0
mov byte [ebp - 4], 0x16
push 0x101da580
lea ecx, [ebp - 0x888]
call fcn.10008420
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x720]
call fcn.1000f580
push eax
lea ecx, [ebp - 0x810]
call fcn.10008420
mov byte [ebp - 4], 0x18
push 3
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x888]
push ecx
lea edx, [ebp - 0x810]
push edx
call fcn.1002ed60
add esp, 0x10
mov dword [ebp - 0x948], eax
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x810]
call fcn.1000a990
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x888]
call fcn.1000a990
cmp dword [ebp - 0x948], 0x2800
jle 0x10015f3f
lea ecx, [ebp - 0x968]
call fcn.1002fbf0
mov byte [ebp - 4], 0x19
push str.install.xml
lea ecx, [ebp - 0x8a0]
call fcn.100088b0
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x8a0]
push eax
lea ecx, [ebp - 0x6d8]
push ecx
lea ecx, [ebp - 0x968]
call fcn.10030b70
mov byte [ebp - 0x919], al
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x8a0]
call fcn.1000a9f0
movzx edx, byte [ebp - 0x919]
test edx, edx
je 0x10015f30
push 1
push 0x40
push 0x22
lea eax, [ebp - 0x7f8]
push eax
lea ecx, [ebp - 0xa1c]
call fcn.10007f60
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0xa1c]
mov edx, dword [ecx + 4]
lea ecx, [ebp + edx - 0xa1c]
call fcn.1000b990
movzx eax, al
test eax, eax
je 0x10015f21
lea ecx, [ebp - 0x6d8]
call fcn.100122c0
xor ecx, ecx
mov dword [ebp - 0x940], eax
mov dword [ebp - 0x93c], ecx
lea ecx, [ebp - 0x6d8]
call fcn.1000f580
mov dword [ebp - 0x938], eax
mov edx, dword [ebp - 0x93c]
push edx
mov eax, dword [ebp - 0x940]
push eax
mov ecx, dword [ebp - 0x938]
push ecx
lea ecx, [ebp - 0xa1c]
call fcn.10014850
lea ecx, [ebp - 0x6f0]
call fcn.1000f5a0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0xa1c]
call fcn.1000f940
lea ecx, [ebp - 0x6f0]
call fcn.1000f5a0
mov dword [ebp - 0x950], eax
lea ecx, [ebp - 0x7f8]
call fcn.1000f5a0
mov dword [ebp - 0x94c], eax
mov edx, dword [ebp - 0x950]
push edx
mov eax, dword [ebp - 0x94c]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
lea ecx, [ebp - 0x6f0]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.10011d70
add esp, 8
lea eax, [ebp - 0x750]
push eax
lea ecx, [ebp - 0x6f0]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.100114e0
add esp, 0xc
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xa1c]
call fcn.1000c300
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x968]
call fcn.1000af50
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x6d8]
call fcn.1000a990
mov dword [ebp - 0x944], 0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x7f8]
call fcn.1000a9f0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x6f0]
call fcn.1000a9f0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x720]
call fcn.1000a990
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x7e0]
call fcn.1000a990
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x738]
call fcn.1000a990
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x6c0]
call fcn.1000a9f0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x7c8]
call fcn.1000a990
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x768]
call fcn.1000a990
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x750]
call fcn.1000a990
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x708]
call fcn.1000a990
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x798]
call fcn.1000a990
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x780]
call fcn.1000a990
xor eax, eax
jne 0x100158d7
lea ecx, [ebp - 0x7b0]
call fcn.1000f5a0
push eax
call fcn.100164c0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7b0]
call fcn.1000a9f0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100499a5
mov esp, ebp
pop ebp
ret