Function at 0x404e8b
Capabilities:
Enumerate processes
Get file attributes
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4cc
mov dword [esp], 0x4db344
call fcn.00419690
mov dword [esp], 0x4db334
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x404ed4
xor edx, edx
mov esi, 0x537f4c
mov ecx, 7
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
cmp byte [eax + 0xa], 0
jne 0x404f8d
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
cmp dword [ebp - 0x4b4], ebx
jne 0x404f3b
mov si, word [ebp - 0x4ae]
jmp 0x404f78
cmp dword [ebp - 0x4ac], ebx
jne 0x404f4b
mov esi, dword [ebp - 0x4b0]
jmp 0x404f78
cmp ecx, ebx
jne 0x404f59
lea ebx, [edx - 0x80]
xor word [eax + edx*2 + 0xc], bx
jmp 0x404f87
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x404f67
mov esi, edi
jmp 0x404f78
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x404f87
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x404f28
inc edx
cmp edx, 0xe
jne 0x404f28
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x244]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db364
call fcn.00419690
mov dword [esp], 0x4db354
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x404fe9
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 8
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537f0c
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x404fe9
cmp byte [eax + 0xa], 0
jne 0x4050a6
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405052
mov si, word [ebp - 0x4ae]
jmp 0x405091
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405064
mov esi, dword [ebp - 0x4b0]
jmp 0x405091
cmp ebx, ecx
jne 0x405072
lea ebx, [edx - 0x7f]
xor word [eax + edx*2 + 0xc], bx
jmp 0x4050a0
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405080
mov esi, edi
jmp 0x405091
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x4050a0
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x40503d
inc edx
cmp edx, 0x10
jne 0x40503d
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x22c]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db384
call fcn.00419690
mov dword [esp], 0x4db374
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405107
xor edx, edx
mov esi, 0x537ecc
mov ecx, 6
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x405107
cmp byte [eax + 0xa], 0
jne 0x4051c4
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405170
mov si, word [ebp - 0x4ae]
jmp 0x4051af
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405182
mov esi, dword [ebp - 0x4b0]
jmp 0x4051af
cmp ebx, ecx
jne 0x405190
lea ebx, [edx - 0x7f]
xor word [eax + edx*2 + 0xc], bx
jmp 0x4051be
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x40519e
mov esi, edi
jmp 0x4051af
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x4051be
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x40515b
inc edx
cmp edx, 0xc
jne 0x40515b
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x214]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db3a4
call fcn.00419690
mov dword [esp], 0x4db394
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405225
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 4
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537e94
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x405225
cmp byte [eax + 0xa], 0
jne 0x4052e2
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x40528e
mov si, word [ebp - 0x4ae]
jmp 0x4052cd
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x4052a0
mov esi, dword [ebp - 0x4b0]
jmp 0x4052cd
cmp ebx, ecx
jne 0x4052ae
lea ebx, [edx - 0x7f]
xor word [eax + edx*2 + 0xc], bx
jmp 0x4052dc
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x4052bc
mov esi, edi
jmp 0x4052cd
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x4052dc
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x405279
inc edx
cmp edx, 8
jne 0x405279
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x1fc]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db3c4
call fcn.00419690
mov dword [esp], 0x4db3b4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405343
xor edx, edx
mov esi, 0x537e6c
mov ecx, 7
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x405343
cmp byte [eax + 0xa], 0
jne 0x405400
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x4053ac
mov si, word [ebp - 0x4ae]
jmp 0x4053eb
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x4053be
mov esi, dword [ebp - 0x4b0]
jmp 0x4053eb
cmp ebx, ecx
jne 0x4053cc
lea ebx, [edx - 0x7e]
xor word [eax + edx*2 + 0xc], bx
jmp 0x4053fa
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x4053da
mov esi, edi
jmp 0x4053eb
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x4053fa
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x405397
inc edx
cmp edx, 0xe
jne 0x405397
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x1e4]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db3e4
call fcn.00419690
mov dword [esp], 0x4db3d4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405461
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 0x22
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537e2c
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
jmp 0x405461
cmp byte [eax + 0xa], 0
jne 0x40551e
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x4054ca
mov si, word [ebp - 0x4ae]
jmp 0x405509
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x4054dc
mov esi, dword [ebp - 0x4b0]
jmp 0x405509
cmp ebx, ecx
jne 0x4054ea
lea ebx, [edx - 0x7e]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405518
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x4054f8
mov esi, edi
jmp 0x405509
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405518
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x4054b5
inc edx
cmp edx, 0x11
jne 0x4054b5
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x1cc]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db404
call fcn.00419690
mov dword [esp], 0x4db3f4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x40557f
xor edx, edx
mov esi, 0x537e0c
mov ecx, 4
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x40557f
cmp byte [eax + 0xa], 0
jne 0x40563c
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x4055e8
mov si, word [ebp - 0x4ae]
jmp 0x405627
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x4055fa
mov esi, dword [ebp - 0x4b0]
jmp 0x405627
cmp ebx, ecx
jne 0x405608
lea ebx, [edx - 0x7d]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405636
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405616
mov esi, edi
jmp 0x405627
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405636
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x4055d3
inc edx
cmp edx, 8
jne 0x4055d3
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x1b4]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db424
call fcn.00419690
mov dword [esp], 0x4db414
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x40569d
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 4
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537df0
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x40569d
cmp byte [eax + 0xa], 0
jne 0x40575a
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405706
mov si, word [ebp - 0x4ae]
jmp 0x405745
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405718
mov esi, dword [ebp - 0x4b0]
jmp 0x405745
cmp ebx, ecx
jne 0x405726
lea ebx, [edx - 0x7d]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405754
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405734
mov esi, edi
jmp 0x405745
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405754
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x4056f1
inc edx
cmp edx, 8
jne 0x4056f1
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x19c]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db444
call fcn.00419690
mov dword [esp], 0x4db434
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x4057bb
xor edx, edx
mov esi, 0x537dcc
mov ecx, 6
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x4057bb
cmp byte [eax + 0xa], 0
jne 0x405878
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405824
mov si, word [ebp - 0x4ae]
jmp 0x405863
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405836
mov esi, dword [ebp - 0x4b0]
jmp 0x405863
cmp ebx, ecx
jne 0x405844
lea ebx, [edx - 0x7d]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405872
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405852
mov esi, edi
jmp 0x405863
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405872
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x40580f
inc edx
cmp edx, 0xc
jne 0x40580f
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x184]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db464
call fcn.00419690
mov dword [esp], 0x4db454
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x4058d9
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 0x16
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537d8c
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
jmp 0x4058d9
cmp byte [eax + 0xa], 0
jne 0x405996
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405942
mov si, word [ebp - 0x4ae]
jmp 0x405981
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405954
mov esi, dword [ebp - 0x4b0]
jmp 0x405981
cmp ebx, ecx
jne 0x405962
lea ebx, [edx - 0x7c]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405990
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405970
mov esi, edi
jmp 0x405981
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405990
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x40592d
inc edx
cmp edx, 0xb
jne 0x40592d
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x16c]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db484
call fcn.00419690
mov dword [esp], 0x4db474
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x4059f7
xor edx, edx
mov esi, 0x537d4c
mov ecx, 6
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x4059f7
cmp byte [eax + 0xa], 0
jne 0x405ab4
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405a60
mov si, word [ebp - 0x4ae]
jmp 0x405a9f
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405a72
mov esi, dword [ebp - 0x4b0]
jmp 0x405a9f
cmp ebx, ecx
jne 0x405a80
lea ebx, [edx - 0x7c]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405aae
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405a8e
mov esi, edi
jmp 0x405a9f
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405aae
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x405a4b
inc edx
cmp edx, 0xc
jne 0x405a4b
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x154]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db4a4
call fcn.00419690
mov dword [esp], 0x4db494
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405b15
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 6
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537d0c
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x405b15
cmp byte [eax + 0xa], 0
jne 0x405bd2
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405b7e
mov si, word [ebp - 0x4ae]
jmp 0x405bbd
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405b90
mov esi, dword [ebp - 0x4b0]
jmp 0x405bbd
cmp ebx, ecx
jne 0x405b9e
lea ebx, [edx - 0x7b]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405bcc
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405bac
mov esi, edi
jmp 0x405bbd
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405bcc
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x405b69
inc edx
cmp edx, 0xc
jne 0x405b69
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x13c]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db4c4
call fcn.00419690
mov dword [esp], 0x4db4b4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405c33
xor edx, edx
mov esi, 0x537ccc
mov ecx, 7
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x405c33
cmp byte [eax + 0xa], 0
jne 0x405cf0
mov ecx, dword [eax + 4]
xor edx, edx
lea edi, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 1]
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405c9c
mov si, word [ebp - 0x4ae]
jmp 0x405cdb
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405cae
mov esi, dword [ebp - 0x4b0]
jmp 0x405cdb
cmp ebx, ecx
jne 0x405cbc
lea ebx, [edx - 0x7b]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405cea
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405cca
mov esi, edi
jmp 0x405cdb
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405cea
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x405c87
inc edx
cmp edx, 0xe
jne 0x405c87
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x124]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db4e4
call fcn.00419690
mov dword [esp], 0x4db4d4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405d51
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 8
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537c8c
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x405d51
cmp byte [eax + 0xa], 0
jne 0x405e0e
mov ecx, dword [eax + 4]
lea edi, [ecx + 1]
lea edx, [ecx + 1]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 2]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 4]
mov word [ebp - 0x4be], di
lea edi, [ecx + 2]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 3]
mov word [ebp - 0x4ae], dx
xor edx, edx
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405dba
mov si, word [ebp - 0x4ae]
jmp 0x405df9
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405dcc
mov esi, dword [ebp - 0x4b0]
jmp 0x405df9
cmp ebx, ecx
jne 0x405dda
lea ebx, [edx - 0x7b]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405e08
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405de8
mov esi, edi
jmp 0x405df9
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405e08
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x405da5
inc edx
cmp edx, 0x10
jne 0x405da5
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x10c]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db504
call fcn.00419690
mov dword [esp], 0x4db4f4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405e6f
xor edx, edx
mov esi, 0x537c4c
mov ecx, 8
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x405e6f
cmp byte [eax + 0xa], 0
jne 0x405f2c
mov ecx, dword [eax + 4]
lea edi, [ecx + 1]
lea edx, [ecx + 2]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b4], edx
lea edx, [ecx + 5]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4bc], edx
lea edx, [ecx + 2]
mov word [ebp - 0x4be], di
lea edi, [ecx + 1]
mov word [ebp - 0x4b0], dx
xor edx, edx
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405ed8
mov si, word [ebp - 0x4ae]
jmp 0x405f17
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x405eea
mov esi, dword [ebp - 0x4b0]
jmp 0x405f17
cmp ebx, ecx
jne 0x405ef8
lea ebx, [edx - 0x7a]
xor word [eax + edx*2 + 0xc], bx
jmp 0x405f26
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x405f06
mov esi, edi
jmp 0x405f17
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x405f26
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x405ec3
inc edx
cmp edx, 0x10
jne 0x405ec3
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0xf4]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db524
call fcn.00419690
mov dword [esp], 0x4db514
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x405f8d
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 0x1a
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537c0c
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
jmp 0x405f8d
cmp byte [eax + 0xa], 0
jne 0x40604a
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
lea edi, [ecx + 2]
mov dword [ebp - 0x4ac], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4b8], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 2]
mov word [ebp - 0x4be], dx
lea edx, [ecx + 1]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 3]
mov word [ebp - 0x4ae], dx
xor edx, edx
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x405ff6
mov si, word [ebp - 0x4ae]
jmp 0x406035
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x406008
mov esi, dword [ebp - 0x4b0]
jmp 0x406035
cmp ebx, ecx
jne 0x406016
lea ebx, [edx - 0x7a]
xor word [eax + edx*2 + 0xc], bx
jmp 0x406044
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x406024
mov esi, edi
jmp 0x406035
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x406044
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x405fe1
inc edx
cmp edx, 0xd
jne 0x405fe1
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0xdc]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db544
call fcn.00419690
mov dword [esp], 0x4db534
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x4060ab
xor edx, edx
mov esi, 0x537bac
mov ecx, 0xe
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x4060ab
cmp byte [eax + 0xa], 0
jne 0x406168
mov ecx, dword [eax + 4]
lea edi, [ecx + 1]
lea edx, [ecx + 2]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b4], edx
lea edx, [ecx + 5]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4bc], edx
lea edx, [ecx + 2]
mov word [ebp - 0x4be], di
lea edi, [ecx + 1]
mov word [ebp - 0x4b0], dx
xor edx, edx
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x406114
mov si, word [ebp - 0x4ae]
jmp 0x406153
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x406126
mov esi, dword [ebp - 0x4b0]
jmp 0x406153
cmp ebx, ecx
jne 0x406134
lea ebx, [edx - 0x7a]
xor word [eax + edx*2 + 0xc], bx
jmp 0x406162
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x406142
mov esi, edi
jmp 0x406153
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x406162
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x4060ff
inc edx
cmp edx, 0x1c
jne 0x4060ff
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0xc4]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db564
call fcn.00419690
mov dword [esp], 0x4db554
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x4061c9
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 0x1e
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537b6c
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
jmp 0x4061c9
cmp byte [eax + 0xa], 0
jne 0x406286
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
lea edi, [ecx + 2]
mov dword [ebp - 0x4ac], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4b8], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 2]
mov word [ebp - 0x4be], dx
lea edx, [ecx + 1]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 3]
mov word [ebp - 0x4ae], dx
xor edx, edx
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x406232
mov si, word [ebp - 0x4ae]
jmp 0x406271
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x406244
mov esi, dword [ebp - 0x4b0]
jmp 0x406271
cmp ebx, ecx
jne 0x406252
lea ebx, [edx - 0x79]
xor word [eax + edx*2 + 0xc], bx
jmp 0x406280
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x406260
mov esi, edi
jmp 0x406271
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x406280
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x40621d
inc edx
cmp edx, 0xf
jne 0x40621d
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0xac]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db584
call fcn.00419690
mov dword [esp], 0x4db574
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x4062e7
xor edx, edx
mov esi, 0x537b2c
mov ecx, 0x1e
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
jmp 0x4062e7
cmp byte [eax + 0xa], 0
jne 0x4063a4
mov ecx, dword [eax + 4]
lea edi, [ecx + 1]
lea edx, [ecx + 2]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b4], edx
lea edx, [ecx + 5]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4bc], edx
lea edx, [ecx + 2]
mov word [ebp - 0x4be], di
lea edi, [ecx + 1]
mov word [ebp - 0x4b0], dx
xor edx, edx
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x406350
mov si, word [ebp - 0x4ae]
jmp 0x40638f
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x406362
mov esi, dword [ebp - 0x4b0]
jmp 0x40638f
cmp ebx, ecx
jne 0x406370
lea ebx, [edx - 0x79]
xor word [eax + edx*2 + 0xc], bx
jmp 0x40639e
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x40637e
mov esi, edi
jmp 0x40638f
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x40639e
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x40633b
inc edx
cmp edx, 0xf
jne 0x40633b
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x94]
mov dword [esp], eax
call fcn.004015a2
push edi
mov dword [esp], 0x4db5a4
call fcn.00419690
mov dword [esp], 0x4db594
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x406405
xor esi, esi
lea edx, [eax + 0xc]
mov ecx, 7
mov dword [eax], esi
mov edi, edx
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov esi, 0x537aec
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
jmp 0x406405
cmp byte [eax + 0xa], 0
jne 0x4064c2
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
lea edi, [ecx + 2]
mov dword [ebp - 0x4ac], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4b8], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 2]
mov word [ebp - 0x4be], dx
lea edx, [ecx + 1]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 3]
mov word [ebp - 0x4ae], dx
xor edx, edx
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x40646e
mov si, word [ebp - 0x4ae]
jmp 0x4064ad
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x406480
mov esi, dword [ebp - 0x4b0]
jmp 0x4064ad
cmp ebx, ecx
jne 0x40648e
lea ebx, [edx - 0x78]
xor word [eax + edx*2 + 0xc], bx
jmp 0x4064bc
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x40649c
mov esi, edi
jmp 0x4064ad
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x4064bc
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x406459
inc edx
cmp edx, 0xe
jne 0x406459
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x7c]
mov dword [esp], eax
call fcn.004015a2
push ecx
mov dword [esp], 0x4db5c4
call fcn.00419690
mov dword [esp], 0x4db5b4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x406520
xor edx, edx
mov esi, 0x537aac
mov ecx, 0x16
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
jmp 0x406520
cmp byte [eax + 0xa], 0
jne 0x4065dd
mov ecx, dword [eax + 4]
lea edi, [ecx + 1]
lea edx, [ecx + 2]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b4], edx
lea edx, [ecx + 5]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4bc], edx
lea edx, [ecx + 2]
mov word [ebp - 0x4be], di
lea edi, [ecx + 1]
mov word [ebp - 0x4b0], dx
xor edx, edx
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x406589
mov si, word [ebp - 0x4ae]
jmp 0x4065c8
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x40659b
mov esi, dword [ebp - 0x4b0]
jmp 0x4065c8
cmp ebx, ecx
jne 0x4065a9
lea ebx, [edx - 0x78]
xor word [eax + edx*2 + 0xc], bx
jmp 0x4065d7
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x4065b7
mov esi, edi
jmp 0x4065c8
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x4065d7
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x406574
inc edx
cmp edx, 0xb
jne 0x406574
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x64]
mov dword [esp], eax
call fcn.004015a2
push eax
mov dword [esp], 0x4db5e4
call fcn.00419690
mov dword [esp], 0x4db5d4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x40663b
xor edi, edi
lea edx, [eax + 0xc]
mov esi, 0x537a6c
mov ecx, 0x1e
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 8], edi
mov edi, edx
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
jmp 0x40663b
cmp byte [eax + 0xa], 0
jne 0x4066f8
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
lea edi, [ecx + 2]
mov dword [ebp - 0x4ac], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4b8], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 2]
mov word [ebp - 0x4be], dx
lea edx, [ecx + 1]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 3]
mov word [ebp - 0x4ae], dx
xor edx, edx
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x4066a4
mov si, word [ebp - 0x4ae]
jmp 0x4066e3
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x4066b6
mov esi, dword [ebp - 0x4b0]
jmp 0x4066e3
cmp ebx, ecx
jne 0x4066c4
lea ebx, [edx - 0x78]
xor word [eax + edx*2 + 0xc], bx
jmp 0x4066f2
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x4066d2
mov esi, edi
jmp 0x4066e3
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x4066f2
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x40668f
inc edx
cmp edx, 0xf
jne 0x40668f
mov byte [eax + 0xa], 1
add eax, 0xc
lea ecx, [ebp - 0x4c]
mov dword [esp], eax
call fcn.004015a2
push esi
lea edi, [ebp - 0x244]
lea ecx, [ebp - 0x4a0]
lea esi, [ebp - 0x34]
mov dword [esp], edi
mov dword [esp + 4], 0x16
call fcn.004016ce
push ebx
push ebx
jmp 0x40673e
sub esi, 0x18
mov ecx, esi
call fcn.004b4970
cmp esi, edi
jne 0x40673e
mov dword [esp], 0x4db604
call fcn.00419690
mov dword [esp], 0x4db5f4
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x406789
xor ecx, ecx
lea edx, [eax + 0xc]
mov esi, 0x537a2c
mov dword [eax], ecx
mov edi, edx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov ecx, 0x1a
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
cmp byte [eax + 0xa], 0
jne 0x406846
mov ecx, dword [eax + 4]
lea edi, [ecx + 1]
lea edx, [ecx + 2]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b4], edx
lea edx, [ecx + 5]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4bc], edx
lea edx, [ecx + 2]
mov word [ebp - 0x4be], di
lea edi, [ecx + 1]
mov word [ebp - 0x4b0], dx
xor edx, edx
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x4067f2
mov si, word [ebp - 0x4ae]
jmp 0x406831
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x406804
mov esi, dword [ebp - 0x4b0]
jmp 0x406831
cmp ebx, ecx
jne 0x406812
lea ebx, [edx - 0x77]
xor word [eax + edx*2 + 0xc], bx
jmp 0x406840
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x406820
mov esi, edi
jmp 0x406831
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x406840
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x4067dd
inc edx
cmp edx, 0xd
jne 0x4067dd
mov byte [eax + 0xa], 1
lea edx, [ebp - 0x44c]
add eax, 0xc
mov dword [esp + 8], 0x104
mov dword [esp + 4], edx
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
dec eax
sub esp, 0xc
cmp eax, 0x102
ja 0x406c6b
mov dword [esp], 0x4db624
call fcn.00419690
mov dword [esp], 0x4db614
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x4068b4
xor edx, edx
mov esi, 0x5379cc
mov ecx, 0x36
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
cmp byte [eax + 0xa], 0
jne 0x406971
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
lea edi, [ecx + 2]
mov dword [ebp - 0x4ac], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4b8], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 2]
mov word [ebp - 0x4be], dx
lea edx, [ecx + 1]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 3]
mov word [ebp - 0x4ae], dx
xor edx, edx
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x40691d
mov si, word [ebp - 0x4ae]
jmp 0x40695c
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x40692f
mov esi, dword [ebp - 0x4b0]
jmp 0x40695c
cmp ebx, ecx
jne 0x40693d
lea ebx, [edx - 0x77]
xor word [eax + edx*2 + 0xc], bx
jmp 0x40696b
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x40694b
mov esi, edi
jmp 0x40695c
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x40696b
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x406908
inc edx
cmp edx, 0x1b
jne 0x406908
mov byte [eax + 0xa], 1
lea ebx, [eax + 0xc]
lea eax, [ebp - 0x44c]
mov dword [esp], eax
lea esi, [ebp - 0x244]
mov ecx, esi
call fcn.004015a2
push eax
mov ecx, esi
mov dword [esp], ebx
call fcn.004b5bd0
push ebx
lea ecx, [ebp - 0x494]
mov dword [esp], eax
call fcn.004b7960
mov ecx, esi
push edi
call fcn.004b4970
mov eax, dword [ebp - 0x494]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
inc eax
push ecx
jne 0x406c5b
mov dword [esp], 0x4db644
call fcn.00419690
mov dword [esp], 0x4db634
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x406a04
xor edx, edx
mov esi, 0x537994
mov ecx, 0xe
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea edx, [eax + 0xc]
mov edi, edx
rep movsb byte es:[edi], byte [esi]
mov byte [ebx], 1
cmp byte [eax + 0xa], 0
jne 0x406ac1
mov ecx, dword [eax + 4]
lea edi, [ecx + 1]
lea edx, [ecx + 2]
mov dword [ebp - 0x4ac], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4b4], edx
lea edx, [ecx + 5]
mov dword [ebp - 0x4b8], edi
lea edi, [ecx + 4]
mov dword [ebp - 0x4bc], edx
lea edx, [ecx + 2]
mov word [ebp - 0x4be], di
lea edi, [ecx + 1]
mov word [ebp - 0x4b0], dx
xor edx, edx
mov word [ebp - 0x4ae], di
lea edi, [ecx + 3]
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x406a6d
mov si, word [ebp - 0x4ae]
jmp 0x406aac
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x406a7f
mov esi, dword [ebp - 0x4b0]
jmp 0x406aac
cmp ebx, ecx
jne 0x406a8d
lea ebx, [edx - 0x77]
xor word [eax + edx*2 + 0xc], bx
jmp 0x406abb
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x406a9b
mov esi, edi
jmp 0x406aac
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x406abb
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x406a58
inc edx
cmp edx, 7
jne 0x406a58
mov byte [eax + 0xa], 1
lea edx, [ebp - 0x244]
add eax, 0xc
mov dword [esp + 8], 0x104
mov dword [esp + 4], edx
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
dec eax
sub esp, 0xc
cmp eax, 0x102
ja 0x406c4e
mov dword [esp], 0x4db664
call fcn.00419690
mov dword [esp], 0x4db654
mov ebx, eax
call fcn.00419690
cmp byte [ebx], 0
jne 0x406b2f
xor edi, edi
lea edx, [eax + 0xc]
mov esi, 0x53796c
mov ecx, 7
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 8], edi
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebx], 1
cmp byte [eax + 0xa], 0
jne 0x406bec
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
lea edi, [ecx + 2]
mov dword [ebp - 0x4ac], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4b4], edi
lea edi, [ecx + 5]
mov dword [ebp - 0x4b8], edx
lea edx, [ecx + 4]
mov dword [ebp - 0x4bc], edi
lea edi, [ecx + 2]
mov word [ebp - 0x4be], dx
lea edx, [ecx + 1]
mov word [ebp - 0x4b0], di
lea edi, [ecx + 3]
mov word [ebp - 0x4ae], dx
xor edx, edx
mov ebx, dword [eax]
mov esi, dword [ebp - 0x4ac]
cmp ebx, esi
jne 0x406b98
mov si, word [ebp - 0x4ae]
jmp 0x406bd7
mov esi, dword [ebp - 0x4b4]
cmp ebx, esi
jne 0x406baa
mov esi, dword [ebp - 0x4b0]
jmp 0x406bd7
cmp ebx, ecx
jne 0x406bb8
lea ebx, [edx - 0x76]
xor word [eax + edx*2 + 0xc], bx
jmp 0x406be6
mov esi, dword [ebp - 0x4b8]
cmp ebx, esi
jne 0x406bc6
mov esi, edi
jmp 0x406bd7
mov esi, dword [ebp - 0x4bc]
cmp ebx, esi
jne 0x406be6
mov si, word [ebp - 0x4be]
xor si, word [eax + edx*2 + 0xc]
inc ebx
mov word [eax + edx*2 + 0xc], si
mov dword [eax], ebx
jmp 0x406b83
inc edx
cmp edx, 0xe
jne 0x406b83
mov byte [eax + 0xa], 1
lea ebx, [eax + 0xc]
lea eax, [ebp - 0x244]
mov dword [esp], eax
lea edi, [ebp - 0x464]
mov ecx, edi
call fcn.004015a2
push esi
mov ecx, edi
mov dword [esp], ebx
call fcn.004b5bd0
push edx
lea esi, [ebp - 0x47c]
mov ecx, esi
mov dword [esp], eax
call fcn.004b7960
push ecx
mov ecx, edi
call fcn.004b4970
mov eax, dword [ebp - 0x47c]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
inc eax
mov ecx, esi
push edi
je 0x406c49
call fcn.004b4970
jmp 0x406c5b
call fcn.004b4970
lea ecx, [ebp - 0x494]
call fcn.004b4970
jmp 0x406c6b
lea ecx, [ebp - 0x494]
call fcn.004b4970
jmp 0x406d07
xor esi, esi
mov dword [esp], 2
mov dword [esp + 4], esi
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
push ebx
push ebx
mov ebx, eax
cmp eax, 0xffffffff
je 0x406d1f
lea edi, [ebp - 0x244]
mov ecx, 0x8b
xor eax, eax
rep stosd dword es:[edi], eax
lea esi, [ebp - 0x244]
mov dword [ebp - 0x244], 0x22c
mov dword [esp + 4], esi
mov dword [esp], ebx
call sub.KERNEL32.dll_Process32FirstW
push ecx
push ecx
test eax, eax
jne 0x406cc7
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push edx
jmp 0x406d1f
mov eax, dword [ebp - 0x49c]
mov edi, dword [ebp - 0x4a0]
mov dword [ebp - 0x4ac], eax
cmp dword [ebp - 0x4ac], edi
je 0x406d11
mov eax, dword [edi]
mov dword [esp + 4], eax
lea eax, [ebp - 0x220]
mov dword [esp], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add edi, 0x18
test eax, eax
jne 0x406cd9
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
mov eax, 1
jmp 0x406da9
mov dword [esp + 4], esi
mov dword [esp], ebx
call sub.KERNEL32.dll_Process32NextW
jmp 0x406cb5
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
jne 0x406d07
call fcn.00401807
test eax, eax
jne 0x406d07
call fcn.00403e57
jmp 0x406da9
lea ecx, [ebp - 0x4a0]
mov dword [ebp - 0x4ac], eax
call fcn.004af360
mov eax, dword [ebp - 0x4ac]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret