Function at 0x468154
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0xbe4
push 0x100
push 0
push 0x8733e0
call fcn.0046e940
add esp, 0xc
lea esi, [esp + 0x520]
mov edi, 0x662240
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x46817e
lea edi, [esp + 0x520]
mov edx, 0x87ec04
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x46819e
lea eax, [esp + 0x520]
push 0x879a58
push eax
call fcn.00471adf
add esp, 8
mov ebx, eax
test ebx, ebx
je 0x468b58
push ebx
push 0x80
push 1
push 0x8733e0
call fcn.00471bab
push ebx
call fcn.00471e45
add esp, 0x14
mov eax, 1
mov dword [esp + 0x7ac], eax
lea eax, [esp + 0x8dc]
push 0x100
push 0
push eax
call fcn.0046e940
add esp, 0xc
mov edi, 0x8733e0
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x46821c
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x468214
mov edx, eax
test edx, edx
jle 0x468b51
xor ebx, ebx
xor ebp, ebp
movzx esi, byte [ebx + 0x8733e0]
movzx eax, byte [esi + str.SetCurrentDirectoryA]
inc eax
movsx ecx, al
cmp ecx, 2
je 0x468aeb
mov ecx, ebx
inc ebx
movzx eax, byte [ecx + 0x8733e0]
mov esi, ebp
inc ebp
mov byte [esp + esi + 0x8dc], al
cmp ebx, edx
jl 0x46822a
xor eax, eax
mov byte [esp + ebp + 0x8dc], al
push 0x100
push eax
push 0x8733e0
call fcn.0046e940
add esp, 0xc
mov esi, 0x8733e0
lea edi, [esp + 0x8dc]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468285
mov eax, 0x8733e0
call fcn.00455610
lea eax, [esp + 0xadc]
push 0x100
push 0
push eax
call fcn.0046e940
add esp, 0xc
lea esi, [esp + 0x7b0]
mov edi, 0x87ec88
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4682bc
lea esi, [esp + 0x7b3]
mov edi, 0x87ec8c
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4682d2
lea esi, [esp + 0x7b6]
mov edi, 0x87ec90
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4682e8
lea esi, [esp + 0x7b9]
mov edi, 0x87ec94
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4682fe
lea esi, [esp + 0x7bc]
mov edi, 0x87ec98
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468314
lea esi, [esp + 0x7bf]
mov edi, 0x87ec9c
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x46832a
lea esi, [esp + 0x7c2]
mov edi, 0x87eca0
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468340
lea esi, [esp + 0x7c5]
mov edi, 0x87eca4
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468356
lea esi, [esp + 0x7c8]
mov edi, 0x87eca8
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x46836c
lea esi, [esp + 0x7cb]
mov edi, 0x87ecac
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468382
lea esi, [esp + 0x7ce]
mov edi, 0x87d790
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468398
lea esi, [esp + 0x7d1]
mov edi, 0x87ecb0
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4683ae
lea esi, [esp + 0x7d4]
mov edi, 0x87ecb4
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4683c4
lea esi, [esp + 0x7d7]
mov edi, 0x87ecb8
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4683da
lea esi, [esp + 0x7da]
mov edi, 0x87ecbc
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4683f0
lea esi, [esp + 0x7dd]
mov edi, 0x87ecc0
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468406
lea esi, [esp + 0x7e0]
mov edi, 0x87ecc4
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x46841c
lea esi, [esp + 0x7e3]
mov edi, 0x87ecc8
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468432
lea esi, [esp + 0x7e6]
mov edi, 0x87eccc
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468448
lea esi, [esp + 0x7e9]
mov edi, 0x87b1a4
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x46845e
lea esi, [esp + 0x7ec]
mov edi, 0x87b1a8
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468474
lea esi, [esp + 0x7ef]
mov edi, 0x87ecd0
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x46848a
lea esi, [esp + 0x7f2]
mov edi, 0x87ecd4
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4684a0
lea esi, [esp + 0x7f5]
mov edi, 0x87ecd8
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4684b6
lea esi, [esp + 0x7f8]
mov edi, 0x87ecdc
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4684cc
lea esi, [esp + 0x7fb]
mov edi, 0x87ece0
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4684e2
lea esi, [esp + 0x7fe]
mov edi, 0x87ece4
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x4684f8
lea esi, [esp + 0x801]
mov edi, 0x87ece8
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x46850e
xor eax, eax
mov byte [esp + eax + 0x9dc], 0
inc eax
cmp eax, 0x100
jl 0x46851a
xor eax, eax
mov byte [esp + 0xa0c], al
mov byte [esp + 0xa0d], 1
mov byte [esp + 0xa0e], 2
mov byte [esp + 0xa0f], 3
mov byte [esp + 0xa10], 4
mov byte [esp + 0xa11], 5
mov byte [esp + 0xa12], 6
mov byte [esp + 0xa13], 7
mov byte [esp + 0xa14], 8
mov byte [esp + 0xa15], 9
mov byte [esp + 0xa1d], 0xa
mov byte [esp + 0xa1e], 0xb
mov byte [esp + 0xa1f], 0xc
mov byte [esp + 0xa20], 0xd
mov byte [esp + 0xa21], 0xe
mov byte [esp + 0xa22], 0xf
mov byte [esp + 0xa3d], 0xa
mov byte [esp + 0xa3e], 0xb
mov byte [esp + 0xa3f], 0xc
mov byte [esp + 0xa40], 0xd
mov byte [esp + 0xa41], 0xe
mov byte [esp + 0xa42], 0xf
lea edx, [esp + 0x6a8]
push 0x100
push eax
push edx
call fcn.0046e940
lea eax, [esp + 0x42c]
push 0x100
push 0
push eax
call fcn.0046e940
add esp, 0x18
lea esi, [esp + 0x6a8]
mov edi, 0x8733e0
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468611
lea esi, [esp + 0x420]
lea edi, [esp + 0x6a8]
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468629
lea edi, [esp + 0x420]
mov edx, 0x879d04
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x468649
lea edi, [esp + 0x6a8]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x46866c
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x468664
mov ebx, eax
xor edx, edx
mov dword [esp + 0x628], edx
mov dword [esp + 0x62c], edx
mov dword [esp + 0x630], edx
mov dword [esp + 0x634], edx
cmp ebx, 2
jle 0x4686cc
mov ecx, 2
xor eax, eax
mov dl, byte [esp + ecx + 0x6a8]
xor ebp, ebp
cmp dl, byte [esp + ebp + 0x7b0]
je 0x468ad7
add ebp, 3
inc eax
cmp eax, 0x1c
jl 0x4686a1
xor eax, eax
mov dword [esp + ecx*8 + 0x628], eax
mov dword [esp + ecx*8 + 0x62c], eax
inc ecx
cmp ecx, ebx
jl 0x468696
mov eax, dword [esp + 0x638]
shl eax, 4
mov edx, dword [esp + 0x640]
mov ecx, dword [esp + 0x644]
shld ecx, edx, 0x1e
shl edx, 0x1e
add ecx, eax
mov ebx, dword [esp + 0x648]
mov ebp, dword [esp + 0x64c]
shld ebp, ebx, 0x18
shl ebx, 0x18
add ebx, edx
adc ebp, ecx
mov esi, dword [esp + 0x650]
mov edi, dword [esp + 0x654]
shld edi, esi, 0x12
shl esi, 0x12
add esi, ebx
adc edi, ebp
mov eax, dword [esp + 0x658]
mov edx, dword [esp + 0x65c]
shld edx, eax, 0xc
shl eax, 0xc
add eax, esi
adc edx, edi
mov ebx, dword [esp + 0x660]
mov ecx, dword [esp + 0x664]
shld ecx, ebx, 6
shl ebx, 6
add ebx, eax
adc ecx, edx
add ebx, dword [esp + 0x668]
adc ecx, dword [esp + 0x66c]
push 0
push 0x1c
push ecx
push ebx
call fcn.00473e60
mov dword [esp + 0x670], eax
mov dword [esp + 0x674], edx
mov cl, byte [esp + 0x6b1]
lea ebx, [eax + eax]
add ebx, eax
cmp cl, byte [esp + ebx + 0x7b0]
jmp 0x4687e1
lea eax, [esp + 0x420]
lea edx, [esp + 0x320]
call fcn.00467ea0
lea eax, [esp + 0x420]
mov edx, 0x11
call fcn.0041cc74
lea edx, [esp + 0x320]
push eax
push edx
push 0x87ecec
push 0x6619c0
call fcn.004711f8
add esp, 0x10
mov edi, 0x6619c0
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x468837
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x46882f
mov ecx, eax
shr ecx, 1
test ecx, ecx
jle 0x468872
xor edx, edx
movsx ebx, byte [edx*2 + 0x6619c0]
movzx eax, byte [esp + ebx + 0x9dc]
shl eax, 4
movsx ebp, byte [edx*2 + 0x6619c1]
movzx esi, byte [esp + ebp + 0x9dc]
add eax, esi
mov byte [esp + edx + 0xadc], al
inc edx
cmp edx, ecx
jl 0x468841
push 0x87ec10
push 0x94
push dword [0x87395c]
call dword [0x578248]
mov ebx, eax
test ebx, ebx
je 0x4689cc
push ebx
push dword [0x87395c]
call dword [0x578250]
mov dword [esp + 0x7a8], eax
mov edx, eax
test edx, edx
je 0x4689cc
push ebx
push dword [0x87395c]
call dword [0x57824c]
mov eax, dword [esp + 0x7a8]
push eax
call dword [0x578254]
test eax, eax
je 0x468ab9
xor edi, edi
movzx ecx, byte [esp + 0xadc]
lea ebp, [edi + edi]
add ebp, ebp
lea edx, [ebp + ebp]
add edx, edx
add edx, edx
sub edx, ebp
lea ebp, [eax + edx]
movzx ebx, byte [edx + eax]
cmp ecx, ebx
jmp 0x46894a
jae 0x4689dc
inc edi
cmp edi, 0xc350
jl 0x4688dd
mov eax, dword [esp + 0x7a8]
test eax, eax
je 0x46896b
push eax
call dword [0x578258]
mov eax, dword [esp + 0x7ac]
cmp eax, 0x1f6
jae 0x468a3a
cmp eax, 0x1f7
je 0x468aac
lea esi, [esp + 0x110]
mov edi, 0x662240
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468994
lea edi, [esp + 0x110]
mov edx, 0x87ec04
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x4689b4
lea eax, [esp + 0x110]
push eax
call dword [0x578090]
mov eax, 0xffffffff
add esp, 0xbe4
pop ebx
pop ebp
pop esi
pop edi
ret
add dword [esp + 0x7ac], 0x1f6
movzx ecx, byte [edx + eax + 0x18]
shl ecx, 0x18
movzx ebx, byte [edx + eax + 0x19]
shl ebx, 0x10
add ecx, ebx
movzx esi, byte [edx + eax + 0x1a]
shl esi, 8
movzx ebp, byte [edx + eax + 0x1b]
add esi, ebp
add ecx, esi
movzx ebp, byte [edx + eax + 0x14]
shl ebp, 0x18
movzx edi, byte [edx + eax + 0x15]
shl edi, 0x10
add ebp, edi
movzx ebx, byte [edx + eax + 0x16]
shl ebx, 8
movzx eax, byte [edx + eax + 0x17]
add ebx, eax
add ebp, ebx
add ecx, ebp
mov dword [0x873714], ecx
jmp 0x468959
lea esi, [esp + 8]
mov edi, 0x662240
mov dl, byte [edi]
inc edi
mov byte [esi], dl
inc esi
test dl, dl
jne 0x468a43
lea edi, [esp + 8]
mov edx, 0x87ec04
mov ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
dec edi
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
test al, al
jne 0x468a60
lea eax, [esp + 8]
push 0x87a6b0
push eax
call fcn.00471adf
add esp, 8
mov ebx, eax
test ebx, ebx
je 0x468aac
mov edi, 0x8733e0
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x468a99
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x468a91
push ebx
push eax
push 1
push edi
call fcn.004730ae
push ebx
call fcn.00471e45
add esp, 0x14
xor eax, eax
add esp, 0xbe4
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, dword [esp + 0x7a8]
push eax
call dword [0x578258]
mov eax, 0xffffffff
add esp, 0xbe4
pop ebx
pop ebp
pop esi
pop edi
ret
cdq
mov dword [esp + ecx*8 + 0x628], eax
mov dword [esp + ecx*8 + 0x62c], edx
jmp 0x4686c7
movzx eax, byte [ebx + 0x8733e1]
shl esi, 8
add esi, eax
push esi
mov dword [esp + 0xbe4], edx
call fcn.00473975
mov edx, dword [esp + 0xbe4]
add esp, 4
cmp eax, esi
jne 0x468b3f
movzx ecx, byte [ebx + 0x8733e0]
mov byte [esp + ebp + 0x8dc], cl
lea esi, [ebx + 1]
add ebx, 2
movzx eax, byte [esi + 0x8733e0]
lea edi, [ebp + 1]
add ebp, 2
mov byte [esp + edi + 0x8dc], al
jmp 0x468259
mov ecx, ebp
inc ebp
mov byte [esp + ecx + 0x8dc], al
add ebx, 2
jmp 0x468259
xor ebp, ebp
jmp 0x46825d
xor eax, eax
push eax
push 0x45cca0
push eax
push 0x87ec80
push dword [0x87395c]
call dword [0x57830c]
cmp eax, 0xffffffff
je 0x4689cc
movsx eax, byte [0x8733e0]
test eax, eax
jne 0x468b96
mov eax, 1
add esp, 0xbe4
pop ebx
pop ebp
pop esi
pop edi
ret
xor eax, eax
mov dword [esp + 0x7ac], eax
jmp 0x4681ee