Function at 0x41875e
Capabilities:
Delete file
Encode data using xor

Disassembly:
mov eax, 0x47049e
call fcn.0046f5a4
sub esp, 0xd8
push ebx
push esi
xor ebx, ebx
push edi
mov dword [ebp - 0x68], ebx
call fcn.0041214c
mov dl, al
mov byte [ebp - 0x3c], bl
xor al, 0x6e
mov byte [ebp - 0x44], dl
mov byte [ebp - 0x41], al
mov cl, dl
mov al, dl
xor cl, 0x43
xor al, 0x66
mov byte [ebp - 0x43], cl
mov byte [ebp - 0x40], al
mov cl, dl
mov al, dl
xor cl, 0x6f
xor al, 0x69
mov byte [ebp - 0x42], cl
mov byte [ebp - 0x3f], al
mov ecx, ebx
mov al, dl
xor al, 0x67
mov byte [ebp - 0x3e], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x3d], al
mov al, byte [ebp + ecx - 0x43]
xor al, dl
mov byte [ecx + 0x50a728], al
inc ecx
cmp ecx, 7
jb 0x4187b6
mov ecx, 0x50a728
mov byte [0x50a72f], bl
call fcn.00451f4c
call fcn.004361ce
call fcn.0041214c
mov ecx, 0x50a6d0
mov byte [0x50a6d0], bl
call fcn.00451f4c
call fcn.0041214c
mov dl, al
mov byte [ebp - 0x11], bl
xor al, 0x77
mov byte [ebp - 0x21], dl
mov byte [ebp - 0x1e], al
mov cl, dl
mov al, dl
xor cl, 0x4e
xor al, 0x20
mov byte [ebp - 0x20], cl
mov byte [ebp - 0x1d], al
mov cl, dl
mov al, dl
xor cl, 0x65
xor al, 0x43
mov byte [ebp - 0x1f], cl
mov byte [ebp - 0x1c], al
mov ecx, ebx
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x1b], al
mov al, dl
xor al, 0x6e
mov byte [ebp - 0x1a], al
mov al, dl
xor al, 0x66
mov byte [ebp - 0x19], al
mov al, dl
xor al, 0x69
mov byte [ebp - 0x18], al
mov al, dl
xor al, 0x67
mov byte [ebp - 0x17], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x16], al
mov al, dl
xor al, 0x4e
mov byte [ebp - 0x15], al
mov al, dl
xor al, 0x61
mov byte [ebp - 0x14], al
mov al, dl
xor al, 0x6d
mov byte [ebp - 0x13], al
mov al, dl
xor al, 0x65
mov byte [ebp - 0x12], al
mov al, byte [ebp + ecx - 0x20]
xor al, dl
mov byte [ecx + 0x50a610], al
inc ecx
cmp ecx, 0xf
jb 0x41886a
push ecx
push ecx
push ebx
mov esi, 0x507b88
mov byte [0x50a61f], bl
push 0x80
mov edx, esi
mov ecx, 0x50a610
call fcn.00453ee2
and dword [ebp - 0x34], ebx
add esp, 0x10
and dword [ebp - 0x30], ebx
call fcn.0041214c
mov dl, al
mov byte [ebp - 0x11], bl
xor al, 0x65
mov byte [ebp - 0x1f], dl
mov byte [ebp - 0x1c], al
mov cl, dl
mov al, dl
xor cl, 0x43
xor al, 0x61
mov byte [ebp - 0x1e], cl
mov byte [ebp - 0x1b], al
mov cl, dl
mov al, dl
xor cl, 0x72
xor al, 0x74
mov byte [ebp - 0x1d], cl
mov byte [ebp - 0x1a], al
mov ecx, ebx
mov al, dl
xor al, 0x65
mov byte [ebp - 0x19], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x18], al
mov al, dl
xor al, 0x43
mov byte [ebp - 0x17], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x16], al
mov al, dl
xor al, 0x6e
mov byte [ebp - 0x15], al
mov al, dl
xor al, 0x66
mov byte [ebp - 0x14], al
mov al, dl
xor al, 0x69
mov byte [ebp - 0x13], al
mov al, dl
xor al, 0x67
mov byte [ebp - 0x12], al
mov al, byte [ebp + ecx - 0x1e]
xor al, dl
mov byte [ecx + 0x50a6b0], al
inc ecx
cmp ecx, 0xd
jb 0x41890e
push ecx
lea edx, [ebp - 0x34]
mov byte [0x50a6bd], bl
mov ecx, 0x50a6b0
call fcn.0045019c
pop ecx
test al, al
je 0x4189db
call fcn.0041214c
mov dl, al
mov byte [ebp - 0x3c], bl
xor al, 0x6e
mov byte [ebp - 0x44], dl
mov byte [ebp - 0x40], al
mov cl, dl
xor cl, 0x2e
mov al, dl
xor al, 0x66
mov byte [ebp - 0x43], cl
mov byte [ebp - 0x3f], al
mov cl, dl
xor cl, 0x63
mov al, dl
xor al, 0x69
mov byte [ebp - 0x42], cl
mov cl, dl
mov byte [ebp - 0x3e], al
xor cl, 0x6f
mov al, dl
xor al, 0x67
mov byte [ebp - 0x41], cl
mov byte [ebp - 0x3d], al
mov ecx, ebx
mov al, byte [ebp + ecx - 0x43]
xor al, dl
mov byte [ecx + 0x50a684], al
inc ecx
cmp ecx, 7
jb 0x41897e
push esi
lea ecx, [ebp - 0x5c]
mov byte [0x50a68b], bl
call fcn.00412445
push 0x50a684
mov edx, eax
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x8c]
call fcn.00412b83
pop ecx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 2
call fcn.00412370
lea ecx, [ebp - 0x8c]
call fcn.0041b388
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8c]
call fcn.00412370
call fcn.0041214c
mov ecx, 0x50a68c
mov byte [0x50a68c], bl
call fcn.00451f4c
lea ecx, [ebp - 0xcc]
call fcn.004181a8
mov dword [ebp - 4], 3
mov ecx, eax
cmp dword [eax + 0x14], 7
jbe 0x418a0c
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
push ecx
call fcn.0046dbe6
mov edx, eax
lea ecx, [ebp - 0xac]
call fcn.0041b2c0
add esp, 0xc
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 5
call fcn.004128ca
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x50a720]
cmp eax, dword [ecx + 4]
jle 0x418a71
mov esi, 0x50a720
push esi
call fcn.0046e267
cmp dword [0x50a720], 0xffffffff
pop ecx
jne 0x418a71
push 0x471910
call fcn.0046e537
pop ecx
push esi
call fcn.0046e216
pop ecx
mov esi, dword [0x507c08]
mov edi, dword [0x507c0c]
push 0x18
pop ebx
mov dword [ebp - 0x60], ebx
cmp esi, edi
je 0x418a9e
mov ecx, esi
call fcn.00412370
add esi, ebx
cmp esi, edi
jne 0x418a87
mov eax, dword [0x507c08]
mov dword [0x507c0c], eax
cmp dword [ebp - 0x98], 0xf
lea eax, [ebp - 0xac]
push dword [ebp - 0x9c]
cmova eax, dword [ebp - 0xac]
push eax
call fcn.0046dbe6
mov edx, eax
lea ecx, [ebp - 0x5c]
call fcn.00417355
mov ebx, 0x7c00
and dword [ebp - 0x74], 0
and dword [ebp - 0x70], 0
add esp, 4
mov byte [ebp - 4], 7
lea edx, [ebp - 0x5c]
lea ecx, [ebp - 0x74]
call fcn.0041a286
pop ecx
test eax, eax
jne 0x419287
lea ecx, [ebp - 0x5c]
call fcn.004128ca
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x34]
call fcn.0041929f
mov esi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0041929f
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
and dword [ebp - 0x34], 0
and dword [ebp - 0x30], 0
call fcn.00419dd1
mov byte [ebp - 4], 0xb
test esi, esi
je 0x418d33
lea eax, [ebp - 0x44]
mov ecx, esi
push eax
call fcn.00417e47
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x68], eax
cmp ecx, 2
jne 0x418c25
call fcn.0041214c
mov dl, al
mov byte [ebp - 0x11], 0
xor al, 0x6e
mov byte [ebp - 0x19], dl
mov byte [ebp - 0x15], al
mov cl, dl
xor cl, 0x2e
mov al, dl
xor al, 0x66
mov byte [ebp - 0x18], cl
mov byte [ebp - 0x14], al
mov cl, dl
xor cl, 0x63
mov al, dl
xor al, 0x69
mov byte [ebp - 0x17], cl
mov cl, dl
mov byte [ebp - 0x13], al
xor cl, 0x6f
mov al, dl
xor al, 0x67
mov byte [ebp - 0x16], cl
mov byte [ebp - 0x12], al
xor ecx, ecx
mov al, byte [ebp + ecx - 0x18]
xor al, dl
mov byte [ecx + 0x50a714], al
inc ecx
cmp ecx, 7
jb 0x418ba4
mov ecx, 0x50a714
mov byte [0x50a71b], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x418bc5
sub ecx, edx
push ecx
push 0x50a714
call fcn.0046dbe6
mov edx, eax
lea ecx, [ebp - 0x5c]
call fcn.00417355
pop ecx
pop ecx
or ebx, 0x300
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0xc
or ebx, 1
lea ecx, [esi + 0x20]
push eax
mov dword [ebp - 0x68], ebx
call fcn.00417886
push dword [ebp - 0x4c]
or ebx, 2
lea ecx, [ebp - 0x5c]
cmp dword [ebp - 0x48], 7
cmova ecx, dword [ebp - 0x5c]
push ecx
mov ecx, eax
call fcn.004176ed
mov byte [ebp - 0x35], 1
test eax, eax
je 0x418c29
mov byte [ebp - 0x35], 0
test bl, 2
je 0x418c3c
lea ecx, [ebp - 0x8c]
and ebx, 0xfffffffd
call fcn.004128ca
mov dword [ebp - 4], 0xb
test bl, 1
je 0x418c53
lea ecx, [ebp - 0x5c]
and ebx, 0xfffffffe
call fcn.004128ca
cmp byte [ebp - 0x35], 0
je 0x418d15
cmp dword [esi + 0x34], 7
lea ecx, [esi + 0x20]
jbe 0x418c69
mov ecx, dword [esi + 0x20]
mov eax, dword [esi + 0x30]
lea esi, [ecx + eax*2]
mov edx, esi
call fcn.004174d6
mov ecx, eax
lea edi, [ebp - 0x5c]
xor eax, eax
sub esi, ecx
stosd dword es:[edi], eax
sar esi, 1
push esi
push ecx
stosd dword es:[edi], eax
lea ecx, [ebp - 0x5c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
and dword [ebp - 0x4c], 0
and dword [ebp - 0x48], 0
call fcn.0041ac53
or ebx, 0x1c
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x5c]
cmp dword [ebp - 0x48], 7
push dword [ebp - 0x4c]
cmova eax, dword [ebp - 0x5c]
push eax
push ecx
call fcn.0046dbe6
mov edx, eax
lea ecx, [ebp - 0x8c]
call fcn.0041b2c0
add esp, 0xc
or ebx, 0xe0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x8c]
mov eax, dword [0x507c0c]
push ecx
cmp eax, dword [0x507c10]
je 0x418cf3
mov ecx, eax
call fcn.00412393
push 0x18
pop eax
add dword [0x507c0c], eax
jmp 0x418cfe
push eax
mov ecx, 0x507c08
call fcn.0041b0e2
lea ecx, [ebp - 0x8c]
call fcn.00412370
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xb
call fcn.004128ca
lea ecx, [ebp - 0x94]
call fcn.00417ee5
test eax, eax
jne 0x419297
mov esi, dword [ebp - 0x94]
jmp 0x418b3e
lea ecx, [ebp - 0x34]
call fcn.00419dd1
lea ecx, [ebp - 0x94]
call fcn.00419dd1
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 5
call fcn.00419dd1
mov eax, dword [0x507c0c]
xor ebx, ebx
mov edi, dword [0x507c08]
mov esi, ebx
sub eax, edi
push 0x18
pop ecx
cdq
idiv ecx
mov ecx, dword [0x5068c8]
test eax, eax
je 0x418dc6
and dword [ebp - 0x34], ebx
and dword [ebp - 0x30], ebx
cmp ecx, esi
lea ecx, [ebx + edi]
sete dl
cmp dword [ecx + 0x14], 0xf
jbe 0x418d89
mov ecx, dword [ecx]
lea eax, [ebp - 0x34]
push eax
push ecx
call fcn.0045ba28
pop ecx
pop ecx
test al, al
je 0x418da3
mov ecx, esi
mov dword [0x5068c8], ecx
jmp 0x418da9
mov ecx, dword [0x5068c8]
mov edi, dword [0x507c08]
inc esi
push 0x18
pop eax
add ebx, eax
mov eax, dword [0x507c0c]
sub eax, edi
cdq
idiv dword [ebp - 0x60]
cmp esi, eax
jb 0x418d79
xor ebx, ebx
cmp ecx, 0xffffffff
je 0x418e0b
imul esi, ecx, 0x18
add esi, edi
cmp dword [esi + 0x14], 0xf
jbe 0x418dd8
mov esi, dword [esi]
push dword [ebp - 0x60]
push ecx
lea ecx, [ebp - 0x25]
call fcn.0041a540
mov edx, ebx
mov cl, byte [eax + edx + 1]
xor cl, byte [eax]
mov byte [edx + 0x50a730], cl
inc edx
cmp edx, 0x13
jb 0x418de6
push esi
push 0x50a730
mov byte [0x50a743], bl
call fcn.0044fad4
pop ecx
pop ecx
and dword [ebp - 0x34], 0
and dword [ebp - 0x30], 0
call fcn.0041214c
mov dl, al
mov byte [ebp - 0x11], bl
xor al, 0x61
mov byte [ebp - 0x1f], dl
mov byte [ebp - 0x1c], al
mov cl, dl
mov al, dl
xor cl, 0x4c
xor al, 0x64
mov byte [ebp - 0x1e], cl
mov byte [ebp - 0x1b], al
mov cl, dl
mov al, dl
xor cl, 0x6f
xor al, 0x20
mov byte [ebp - 0x1d], cl
mov byte [ebp - 0x1a], al
mov cl, dl
mov al, dl
xor cl, 0x65
xor al, 0x53
mov byte [ebp - 0x16], cl
mov byte [ebp - 0x19], al
mov al, dl
xor al, 0x65
mov byte [ebp - 0x13], cl
mov byte [ebp - 0x18], al
mov ecx, ebx
mov al, dl
xor al, 0x6c
mov byte [ebp - 0x17], al
mov al, dl
xor al, 0x63
mov byte [ebp - 0x15], al
mov al, dl
xor al, 0x74
mov byte [ebp - 0x14], al
mov al, dl
xor al, 0x64
mov byte [ebp - 0x12], al
mov al, byte [ebp + ecx - 0x1e]
xor al, dl
mov byte [ecx + 0x50a6d4], al
inc ecx
cmp ecx, 0xd
jb 0x418e7a
push ecx
lea edx, [ebp - 0x34]
mov byte [0x50a6e1], bl
mov ecx, 0x50a6d4
call fcn.0045019c
pop ecx
push 0x18
pop edi
test al, al
je 0x418ee2
mov ecx, dword [0x5068c8]
test ecx, ecx
js 0x418ee2
mov eax, dword [0x507c0c]
mov esi, dword [0x507c08]
sub eax, esi
cdq
idiv edi
cmp ecx, eax
jae 0x418ee2
imul eax, ecx, 0x18
lea ecx, [ebp - 0x8c]
add eax, esi
push eax
call fcn.004124a4
lea ecx, [ebp - 0x8c]
call fcn.00412370
and dword [ebp - 0x34], 0
and dword [ebp - 0x30], 0
call fcn.0041214c
mov dl, al
mov byte [ebp - 0x11], bl
xor al, 0x76
mov byte [ebp - 0x1f], dl
mov byte [ebp - 0x1c], al
mov cl, dl
mov al, dl
xor cl, 0x53
xor al, 0x65
mov byte [ebp - 0x1e], cl
mov byte [ebp - 0x1b], al
mov cl, dl
mov al, dl
xor cl, 0x61
xor al, 0x20
mov byte [ebp - 0x1d], cl
mov byte [ebp - 0x1a], al
mov cl, dl
mov al, dl
xor cl, 0x65
xor al, 0x53
mov byte [ebp - 0x18], cl
mov byte [ebp - 0x19], al
mov al, dl
xor al, 0x6c
mov byte [ebp - 0x16], cl
mov byte [ebp - 0x17], al
mov al, dl
xor al, 0x63
mov byte [ebp - 0x13], cl
mov byte [ebp - 0x15], al
mov ecx, ebx
mov al, dl
xor al, 0x74
mov byte [ebp - 0x14], al
mov al, dl
xor al, 0x64
mov byte [ebp - 0x12], al
mov al, byte [ebp + ecx - 0x1e]
xor al, dl
mov byte [ecx + 0x50a704], al
inc ecx
cmp ecx, 0xd
jb 0x418f4d
push ecx
lea edx, [ebp - 0x34]
mov byte [0x50a711], bl
mov ecx, 0x50a704
call fcn.0045019c
pop ecx
test al, al
je 0x418fc5
mov ecx, dword [0x5068c8]
test ecx, ecx
js 0x418fc5
mov eax, dword [0x507c0c]
mov esi, dword [0x507c08]
sub eax, esi
cdq
idiv edi
cmp ecx, eax
jae 0x418fc5
imul eax, ecx, 0x18
lea ecx, [ebp - 0x8c]
add eax, esi
push eax
call fcn.004124a4
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0xf
call fcn.0041b388
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 5
call fcn.00412370
call fcn.0041214c
mov ecx, 0x50a645
mov byte [0x50a645], bl
call fcn.00451f4c
and dword [ebp - 0x34], 0
and dword [ebp - 0x30], 0
call fcn.0041214c
mov dl, al
mov byte [ebp - 0x11], bl
xor al, 0x65
mov byte [ebp - 0x21], dl
mov byte [ebp - 0x1f], al
mov cl, dl
mov al, dl
xor cl, 0x44
xor al, 0x6c
mov byte [ebp - 0x20], cl
mov byte [ebp - 0x1e], al
mov cl, dl
mov al, dl
xor cl, 0x65
xor al, 0x74
mov byte [ebp - 0x1d], cl
mov byte [ebp - 0x1c], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x1b], cl
mov byte [ebp - 0x1a], al
mov al, dl
xor al, 0x53
mov byte [ebp - 0x18], cl
mov byte [ebp - 0x19], al
mov al, dl
xor al, 0x6c
mov byte [ebp - 0x16], cl
mov byte [ebp - 0x17], al
mov al, dl
xor al, 0x63
mov byte [ebp - 0x13], cl
mov byte [ebp - 0x15], al
mov ecx, ebx
mov al, dl
xor al, 0x74
mov byte [ebp - 0x14], al
mov al, dl
xor al, 0x64
mov byte [ebp - 0x12], al
mov al, byte [ebp + ecx - 0x20]
xor al, dl
mov byte [ecx + 0x50a6c0], al
inc ecx
cmp ecx, 0xf
jb 0x41904a
push ecx
lea edx, [ebp - 0x34]
mov byte [0x50a6cf], bl
mov ecx, 0x50a6c0
call fcn.0045019c
pop ecx
test al, al
je 0x41915f
mov ecx, dword [0x5068c8]
test ecx, ecx
js 0x41915f
mov eax, dword [0x507c0c]
mov esi, dword [0x507c08]
sub eax, esi
cdq
idiv edi
cmp ecx, eax
jae 0x41915f
imul eax, ecx, 0x18
lea ecx, [ebp - 0x8c]
add eax, esi
push eax
call fcn.004124a4
push 0x47a394
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x28]
call fcn.0041a198
pop ecx
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x11
push ecx
mov edx, eax
lea ecx, [ebp - 0x5c]
call fcn.00412bb7
pop ecx
lea ecx, [ebp - 0x28]
call fcn.00412370
cmp dword [ebp - 0x48], 0xf
lea eax, [ebp - 0x5c]
cmova eax, dword [ebp - 0x5c]
push eax
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
pop ecx
test eax, eax
jne 0x419148
imul ebx, dword [0x5068c8], 0x18
mov edi, dword [0x507c0c]
add ebx, dword [0x507c08]
lea esi, [ebx + 0x18]
cmp esi, edi
je 0x419130
push esi
mov ecx, ebx
call fcn.0041a14f
push 0x18
pop eax
add esi, eax
add ebx, eax
cmp esi, edi
jne 0x419117
mov edi, dword [0x507c0c]
lea ecx, [edi - 0x18]
call fcn.00412370
push 0x18
pop eax
sub dword [0x507c0c], eax
or dword [0x5068c8], 0xffffffff
lea ecx, [ebp - 0x5c]
call fcn.00412370
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 5
call fcn.00412370
and dword [ebp - 0x34], 0
and dword [ebp - 0x30], 0
call fcn.0041214c
mov bl, al
mov byte [ebp - 0x11], 0
xor al, 0x65
mov byte [ebp - 0x22], bl
mov byte [ebp - 0x20], al
mov cl, bl
mov al, bl
xor cl, 0x52
xor al, 0x73
mov byte [ebp - 0x21], cl
mov byte [ebp - 0x1f], al
mov cl, bl
mov al, bl
xor cl, 0x65
xor al, 0x74
mov byte [ebp - 0x1e], cl
mov byte [ebp - 0x1d], al
mov dl, bl
mov al, bl
mov byte [ebp - 0x17], cl
xor al, 0x20
xor dl, 0x74
mov byte [ebp - 0x1c], al
mov al, bl
xor al, 0x6f
mov byte [ebp - 0x1b], dl
mov byte [ebp - 0x1a], al
mov al, bl
xor al, 0x20
mov byte [ebp - 0x12], dl
mov byte [ebp - 0x19], al
mov al, bl
xor al, 0x44
mov byte [ebp - 0x18], al
mov al, bl
xor al, 0x66
mov byte [ebp - 0x16], al
mov al, bl
xor al, 0x61
mov byte [ebp - 0x15], al
mov al, bl
xor al, 0x75
mov byte [ebp - 0x14], al
mov al, bl
xor al, 0x6c
xor ecx, ecx
mov byte [ebp - 0x13], al
mov al, byte [ebp + ecx - 0x21]
xor al, bl
mov byte [ecx + 0x50a6e4], al
inc ecx
cmp ecx, 0x10
jb 0x4191e0
push ecx
lea edx, [ebp - 0x34]
mov byte [0x50a6f4], 0
mov ecx, 0x50a6e4
call fcn.0045019c
pop ecx
test al, al
je 0x419211
call fcn.00419bf8
call fcn.0041214c
mov ecx, 0x50a724
mov byte [0x50a724], 0
call fcn.00451f4c
push dword [ebp - 0x60]
push ecx
lea ecx, [ebp - 0x1e]
call fcn.00412f4c
lea ecx, [ebp - 0xe4]
push ecx
mov ecx, eax
call fcn.00412112
mov byte [ebp - 4], 0x12
cmp dword [eax + 0x14], 0xf
jbe 0x41924d
mov eax, dword [eax]
push 0x5068d0
push eax
call fcn.0045ff3a
lea ecx, [ebp - 0xe4]
call fcn.00412370
call fcn.00436222
call fcn.0045c21a
lea ecx, [ebp - 0xac]
call fcn.00412370
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret
lea ecx, [ebp - 0x5c]
mov edx, eax
push ecx
mov ecx, str.directory_iterator::directory_iterator
call fcn.00417d23
mov edx, eax
call fcn.00417c5e
int3