Function at 0x404100
Capabilities:
Enumerate files on windows
Enumerate files recursively

Disassembly:
push ebp
lea ebp, [esp - 0x74]
sub esp, 0x818
mov dword [ebp + 0x3c], 0
mov eax, dword [ebp + 0x60]
xor eax, dword [ebp + 0x60]
mov dword [ebp + 0x60], eax
jmp 0x404126
mov ecx, dword [ebp + 0x60]
add ecx, 1
mov dword [ebp + 0x60], ecx
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2b
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x9c], eax
mov edx, dword [ebp + 0x60]
cmp edx, dword [ebp - 0x9c]
jge 0x4041cf
mov dword [ebp - 0xac], 1
jmp 0x4041d9
mov dword [ebp - 0xac], 0
mov al, byte [ebp - 0xac]
mov byte [ebp + 0x2f], al
mov ecx, dword [ebp - 0x9c]
xor ecx, dword [ebp - 0x9c]
mov dword [ebp - 0x9c], ecx
movzx edx, byte [ebp + 0x2f]
test edx, edx
je 0x404372
mov eax, dword [ebp + 0x60]
mov ecx, dword [ebp + 0x60]
mov dl, byte [ecx + 0x4120b4]
mov byte [ebp + eax + 0x22], dl
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f1b6e
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp], ecx
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f182f
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0xa0], ecx
mov eax, dword [ebp]
add eax, dword [ebp + 0x60]
xor edx, edx
div dword [ebp - 0xa0]
mov eax, dword [ebp + 0x60]
movsx ecx, byte [ebp + eax + 0x22]
xor ecx, edx
mov edx, dword [ebp + 0x60]
mov byte [ebp + edx + 0x22], cl
mov eax, dword [ebp - 0xa0]
xor eax, dword [ebp - 0xa0]
mov dword [ebp - 0xa0], eax
mov ecx, dword [ebp]
xor ecx, dword [ebp]
mov dword [ebp], ecx
jmp 0x40411d
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2e
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 4], eax
mov edx, dword [ebp + 0x60]
xor edx, dword [ebp + 0x60]
mov eax, dword [ebp + 0x60]
sub eax, dword [ebp - 4]
mov byte [ebp + eax + 0x22], dl
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp - 4]
mov dword [ebp - 4], ecx
mov edx, dword [ebp + 0x60]
xor edx, dword [ebp + 0x60]
mov dword [ebp + 0x60], edx
mov eax, dword [ebp + 0x7c]
push eax
lea ecx, [ebp + 0x22]
push ecx
lea edx, [ebp - 0x7a4]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov eax, dword [ebp + 0x40]
xor eax, dword [ebp + 0x40]
mov dword [ebp + 0x40], eax
jmp 0x40444f
mov ecx, dword [ebp + 0x40]
add ecx, 1
mov dword [ebp + 0x40], ecx
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2b
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 8], eax
mov edx, dword [ebp + 0x40]
cmp edx, dword [ebp - 8]
jge 0x4044f2
mov dword [ebp - 0xb0], 1
jmp 0x4044fc
mov dword [ebp - 0xb0], 0
mov al, byte [ebp - 0xb0]
mov byte [ebp + 0x38], al
mov ecx, dword [ebp - 8]
xor ecx, dword [ebp - 8]
mov dword [ebp - 8], ecx
movzx edx, byte [ebp + 0x38]
test edx, edx
je 0x404534
mov eax, dword [ebp + 0x40]
movsx ecx, byte [ebp + eax + 0x22]
mov edx, dword [ebp + 0x40]
movsx eax, byte [ebp + edx + 0x22]
xor eax, ecx
mov ecx, dword [ebp + 0x40]
mov byte [ebp + ecx + 0x22], al
jmp 0x404446
mov edx, dword [ebp + 0x40]
xor edx, dword [ebp + 0x40]
mov dword [ebp + 0x40], edx
lea eax, [ebp - 0x298]
push eax
lea ecx, [ebp - 0x7a4]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 0
je 0x4060c1
cmp dword [ebp - 0xa8], 0xffffffff
je 0x4060c1
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b3f
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0x298]
and edx, dword [ebp - 0xc]
jne 0x404617
mov dword [ebp - 0xb4], 1
jmp 0x404621
mov dword [ebp - 0xb4], 0
mov al, byte [ebp - 0xb4]
mov byte [ebp + 0x37], al
mov ecx, dword [ebp - 0xc]
xor ecx, dword [ebp - 0xc]
mov dword [ebp - 0xc], ecx
movzx edx, byte [ebp + 0x37]
test edx, edx
je 0x405305
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f182b
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0x18], ecx
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f1b2f
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x12c], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0xf0], ecx
lea edx, [ebp - 0x39c]
mov dword [ebp - 0x130], edx
mov dword [ebp - 0x10], 0
jmp 0x40478f
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x12c]
jge 0x4047ad
mov edx, dword [ebp - 0x130]
add edx, dword [ebp - 0x10]
mov al, byte [ebp - 0xf0]
mov byte [edx], al
jmp 0x404786
mov ecx, dword [ebp - 0x14]
xor ecx, dword [ebp - 0x14]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x18]
xor edx, dword [ebp - 0x18]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp + 0x64]
xor eax, dword [ebp + 0x64]
mov dword [ebp + 0x64], eax
jmp 0x4047d3
mov ecx, dword [ebp + 0x64]
add ecx, 1
mov dword [ebp + 0x64], ecx
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2a
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp + 0x64]
cmp edx, dword [ebp - 0x1c]
jge 0x404876
mov dword [ebp - 0xb8], 1
jmp 0x404880
mov dword [ebp - 0xb8], 0
mov al, byte [ebp - 0xb8]
mov byte [ebp + 0x36], al
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
movzx edx, byte [ebp + 0x36]
test edx, edx
je 0x404a01
mov eax, dword [ebp + 0x64]
mov ecx, dword [ebp + 0x64]
mov dl, byte [ecx + str.t_z]
mov byte [ebp + eax + 0x1d], dl
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f1b29
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0x24], ecx
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f182f
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x24]
add eax, dword [ebp + 0x64]
xor edx, edx
div dword [ebp - 0x20]
mov eax, dword [ebp + 0x64]
movsx ecx, byte [ebp + eax + 0x1d]
xor ecx, edx
mov edx, dword [ebp + 0x64]
mov byte [ebp + edx + 0x1d], cl
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x24]
xor ecx, dword [ebp - 0x24]
mov dword [ebp - 0x24], ecx
jmp 0x4047ca
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2e
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x28], eax
mov edx, dword [ebp + 0x64]
xor edx, dword [ebp + 0x64]
mov eax, dword [ebp + 0x64]
sub eax, dword [ebp - 0x28]
mov byte [ebp + eax + 0x1d], dl
mov ecx, dword [ebp - 0x28]
xor ecx, dword [ebp - 0x28]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp + 0x64]
xor edx, dword [ebp + 0x64]
mov dword [ebp + 0x64], edx
lea eax, [ebp - 0x26c]
push eax
mov ecx, dword [ebp + 0x7c]
push ecx
lea edx, [ebp + 0x1d]
push edx
lea eax, [ebp - 0x39c]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov ecx, dword [ebp + 0x44]
xor ecx, dword [ebp + 0x44]
mov dword [ebp + 0x44], ecx
jmp 0x404ae5
mov edx, dword [ebp + 0x44]
add edx, 1
mov dword [ebp + 0x44], edx
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f1b2a
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp + 0x44]
cmp eax, dword [ebp - 0x2c]
jge 0x404b89
mov dword [ebp - 0xbc], 1
jmp 0x404b93
mov dword [ebp - 0xbc], 0
mov cl, byte [ebp - 0xbc]
mov byte [ebp + 0x35], cl
mov edx, dword [ebp - 0x2c]
xor edx, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], edx
movzx eax, byte [ebp + 0x35]
test eax, eax
je 0x404bcb
mov ecx, dword [ebp + 0x44]
movsx edx, byte [ebp + ecx + 0x1d]
mov eax, dword [ebp + 0x44]
movsx ecx, byte [ebp + eax + 0x1d]
xor ecx, edx
mov edx, dword [ebp + 0x44]
mov byte [ebp + edx + 0x1d], cl
jmp 0x404adc
mov eax, dword [ebp + 0x44]
xor eax, dword [ebp + 0x44]
mov dword [ebp + 0x44], eax
lea ecx, [ebp - 0x39c]
push ecx
call fcn.00402280
add esp, 4
mov dword [ebp - 0xc4], eax
mov edx, dword [section..data]
mov eax, dword [0x413004]
lea ecx, [eax + edx*4]
mov dword [ebp - 0xa4], ecx
lea edx, [ebp - 0xc4]
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xf4], eax
mov dword [ebp + 0x18], 0
jmp 0x404c27
mov ecx, dword [ebp + 0x18]
add ecx, 1
mov dword [ebp + 0x18], ecx
cmp dword [ebp + 0x18], 4
jge 0x404c45
mov edx, dword [ebp - 0xf4]
add edx, dword [ebp + 0x18]
mov eax, dword [ebp - 0xf8]
add eax, dword [ebp + 0x18]
mov cl, byte [eax]
mov byte [edx], cl
jmp 0x404c1e
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f182b
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x38], eax
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2f
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xfc], edx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x104], eax
lea ecx, [ebp - 0x4a0]
mov dword [ebp - 0x100], ecx
mov dword [ebp - 0x30], 0
jmp 0x404d93
mov edx, dword [ebp - 0x30]
add edx, 1
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0xfc]
jge 0x404db1
mov ecx, dword [ebp - 0x100]
add ecx, dword [ebp - 0x30]
mov dl, byte [ebp - 0x104]
mov byte [ecx], dl
jmp 0x404d8a
mov eax, dword [ebp - 0x34]
xor eax, dword [ebp - 0x34]
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x38]
xor ecx, dword [ebp - 0x38]
mov dword [ebp - 0x38], ecx
lea edx, [ebp - 0x393]
mov dword [ebp - 0x10c], edx
lea eax, [ebp - 0x39c]
mov dword [ebp + 0x14], eax
mov ecx, dword [ebp + 0x14]
add ecx, 1
mov dword [ebp - 0x108], ecx
mov edx, dword [ebp + 0x14]
mov al, byte [edx]
mov byte [ebp + 0x34], al
add dword [ebp + 0x14], 1
cmp byte [ebp + 0x34], 0
jne 0x404de4
mov ecx, dword [ebp + 0x14]
sub ecx, dword [ebp - 0x108]
mov dword [ebp - 0x110], ecx
mov edx, dword [ebp - 0x10c]
mov dword [ebp - 0x118], edx
lea eax, [ebp - 0x4a0]
mov dword [ebp - 0x114], eax
mov dword [ebp + 0x10], 0
jmp 0x404e2f
mov ecx, dword [ebp + 0x10]
add ecx, 1
mov dword [ebp + 0x10], ecx
mov edx, dword [ebp + 0x10]
cmp edx, dword [ebp - 0x110]
jge 0x404e52
mov eax, dword [ebp - 0x114]
add eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x118]
add ecx, dword [ebp + 0x10]
mov dl, byte [ecx]
mov byte [eax], dl
jmp 0x404e26
imul eax, dword [section..data], 0x104
add eax, dword [0x41321c]
mov dword [ebp - 0xa4], eax
lea ecx, [ebp - 0x4a0]
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x11c], edx
mov dword [ebp + 0xc], 0
jmp 0x404e92
mov eax, dword [ebp + 0xc]
add eax, 1
mov dword [ebp + 0xc], eax
cmp dword [ebp + 0xc], 0x104
jge 0x404eb3
mov ecx, dword [ebp - 0x11c]
add ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x120]
add edx, dword [ebp + 0xc]
mov al, byte [edx]
mov byte [ecx], al
jmp 0x404e89
mov ecx, dword [section..data]
add ecx, 1
mov dword [section..data], ecx
mov edx, dword [ebp + 0x68]
xor edx, dword [ebp + 0x68]
mov dword [ebp + 0x68], edx
jmp 0x404ed6
mov eax, dword [ebp + 0x68]
add eax, 1
mov dword [ebp + 0x68], eax
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f1b09
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x3c], edx
mov ecx, dword [ebp + 0x68]
cmp ecx, dword [ebp - 0x3c]
jge 0x404f7a
mov dword [ebp - 0xc0], 1
jmp 0x404f84
mov dword [ebp - 0xc0], 0
mov dl, byte [ebp - 0xc0]
mov byte [ebp + 0x33], dl
mov eax, dword [ebp - 0x3c]
xor eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
movzx ecx, byte [ebp + 0x33]
test ecx, ecx
je 0x40510c
mov edx, dword [ebp + 0x68]
mov eax, dword [ebp + 0x68]
mov cl, byte [eax + str.tWIDMZYBBJ]
mov byte [ebp + edx - 0x156], cl
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b0b
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x44], eax
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f182f
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x44]
add eax, dword [ebp + 0x68]
xor edx, edx
div dword [ebp - 0x40]
mov eax, dword [ebp + 0x68]
movsx ecx, byte [ebp + eax - 0x156]
xor ecx, edx
mov edx, dword [ebp + 0x68]
mov byte [ebp + edx - 0x156], cl
mov eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x44]
xor ecx, dword [ebp - 0x44]
mov dword [ebp - 0x44], ecx
jmp 0x404ecd
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2e
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x48], eax
mov edx, dword [ebp + 0x68]
xor edx, dword [ebp + 0x68]
mov eax, dword [ebp + 0x68]
sub eax, dword [ebp - 0x48]
mov byte [ebp + eax - 0x156], dl
mov ecx, dword [ebp - 0x48]
xor ecx, dword [ebp - 0x48]
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp + 0x68]
xor edx, dword [ebp + 0x68]
mov dword [ebp + 0x68], edx
lea eax, [ebp - 0x4a0]
push eax
mov ecx, dword [ebp - 0xc4]
push ecx
lea edx, [ebp - 0x156]
push edx
lea eax, [ebp - 0x6a4]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov ecx, dword [ebp + 0x48]
xor ecx, dword [ebp + 0x48]
mov dword [ebp + 0x48], ecx
jmp 0x4051f9
mov edx, dword [ebp + 0x48]
add edx, 1
mov dword [ebp + 0x48], edx
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f1b09
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0x4c], ecx
mov eax, dword [ebp + 0x48]
cmp eax, dword [ebp - 0x4c]
jge 0x40529d
mov dword [ebp - 0xc8], 1
jmp 0x4052a7
mov dword [ebp - 0xc8], 0
mov cl, byte [ebp - 0xc8]
mov byte [ebp + 0x26], cl
mov edx, dword [ebp - 0x4c]
xor edx, dword [ebp - 0x4c]
mov dword [ebp - 0x4c], edx
movzx eax, byte [ebp + 0x26]
test eax, eax
je 0x4052e8
mov ecx, dword [ebp + 0x48]
movsx edx, byte [ebp + ecx - 0x156]
mov eax, dword [ebp + 0x48]
movsx ecx, byte [ebp + eax - 0x156]
xor ecx, edx
mov edx, dword [ebp + 0x48]
mov byte [ebp + edx - 0x156], cl
jmp 0x4051f0
mov eax, dword [ebp + 0x48]
xor eax, dword [ebp + 0x48]
mov dword [ebp + 0x48], eax
lea ecx, [ebp - 0x6a4]
push ecx
call section..text
add esp, 4
jmp 0x4060a5
or dword [ebp + 0x3c], 1
mov edx, dword [ebp + 0x6c]
xor edx, dword [ebp + 0x6c]
mov dword [ebp + 0x6c], edx
jmp 0x40531d
mov eax, dword [ebp + 0x6c]
add eax, 1
mov dword [ebp + 0x6c], eax
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f1b2d
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x50], edx
mov ecx, dword [ebp + 0x6c]
cmp ecx, dword [ebp - 0x50]
jge 0x4053c1
mov dword [ebp - 0xcc], 1
jmp 0x4053cb
mov dword [ebp - 0xcc], 0
mov dl, byte [ebp - 0xcc]
mov byte [ebp + 0x27], dl
mov eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0x50]
mov dword [ebp - 0x50], eax
movzx ecx, byte [ebp + 0x27]
test ecx, ecx
je 0x40554a
mov edx, dword [ebp + 0x6c]
mov eax, dword [ebp + 0x6c]
mov cl, byte [eax + 0x4120e8]
mov byte [ebp + edx + 0x5a], cl
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f18bc
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x58], eax
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f182f
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x58]
add eax, dword [ebp + 0x6c]
xor edx, edx
div dword [ebp - 0x54]
mov eax, dword [ebp + 0x6c]
movsx ecx, byte [ebp + eax + 0x5a]
xor ecx, edx
mov edx, dword [ebp + 0x6c]
mov byte [ebp + edx + 0x5a], cl
mov eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x54]
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x58]
xor ecx, dword [ebp - 0x58]
mov dword [ebp - 0x58], ecx
jmp 0x405314
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2e
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x5c], eax
mov edx, dword [ebp + 0x6c]
xor edx, dword [ebp + 0x6c]
mov eax, dword [ebp + 0x6c]
sub eax, dword [ebp - 0x5c]
mov byte [ebp + eax + 0x5a], dl
mov ecx, dword [ebp - 0x5c]
xor ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp + 0x6c]
xor edx, dword [ebp + 0x6c]
mov dword [ebp + 0x6c], edx
lea eax, [ebp + 0x5a]
mov dword [ebp - 0x64], eax
lea ecx, [ebp - 0x26c]
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x60]
mov al, byte [edx]
mov byte [ebp + 0x28], al
mov ecx, dword [ebp - 0x64]
cmp al, byte [ecx]
jne 0x40564a
cmp byte [ebp + 0x28], 0
je 0x40563e
mov edx, dword [ebp - 0x60]
mov al, byte [edx + 1]
mov byte [ebp + 0x2a], al
mov ecx, dword [ebp - 0x64]
cmp al, byte [ecx + 1]
jne 0x40564a
add dword [ebp - 0x60], 2
add dword [ebp - 0x64], 2
cmp byte [ebp + 0x2a], 0
jne 0x40560a
mov dword [ebp - 0xd0], 0
jmp 0x405655
sbb edx, edx
or edx, 1
mov dword [ebp - 0xd0], edx
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x124], eax
cmp dword [ebp - 0x124], 0
je 0x4059e2
or dword [ebp + 0x3c], 2
mov ecx, dword [ebp + 0x70]
xor ecx, dword [ebp + 0x70]
mov dword [ebp + 0x70], ecx
jmp 0x405686
mov edx, dword [ebp + 0x70]
add edx, 1
mov dword [ebp + 0x70], edx
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f1b2c
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0x68], ecx
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp - 0x68]
jge 0x40572a
mov dword [ebp - 0xd4], 1
jmp 0x405734
mov dword [ebp - 0xd4], 0
mov cl, byte [ebp - 0xd4]
mov byte [ebp + 0x2b], cl
mov edx, dword [ebp - 0x68]
xor edx, dword [ebp - 0x68]
mov dword [ebp - 0x68], edx
movzx eax, byte [ebp + 0x2b]
test eax, eax
je 0x4058b5
mov ecx, dword [ebp + 0x70]
mov edx, dword [ebp + 0x70]
mov al, byte [edx + 0x4120ec]
mov byte [ebp + ecx + 0x39], al
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f18ef
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x70], edx
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f182f
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x70]
add eax, dword [ebp + 0x70]
xor edx, edx
div dword [ebp - 0x6c]
mov ecx, dword [ebp + 0x70]
movsx eax, byte [ebp + ecx + 0x39]
xor eax, edx
mov ecx, dword [ebp + 0x70]
mov byte [ebp + ecx + 0x39], al
mov edx, dword [ebp - 0x6c]
xor edx, dword [ebp - 0x6c]
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x70]
xor eax, dword [ebp - 0x70]
mov dword [ebp - 0x70], eax
jmp 0x40567d
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f1b2e
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x74], edx
mov ecx, dword [ebp + 0x70]
xor ecx, dword [ebp + 0x70]
mov edx, dword [ebp + 0x70]
sub edx, dword [ebp - 0x74]
mov byte [ebp + edx + 0x39], cl
mov eax, dword [ebp - 0x74]
xor eax, dword [ebp - 0x74]
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp + 0x70]
xor ecx, dword [ebp + 0x70]
mov dword [ebp + 0x70], ecx
lea edx, [ebp + 0x39]
mov dword [ebp - 0x7c], edx
lea eax, [ebp - 0x26c]
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x78]
mov dl, byte [ecx]
mov byte [ebp + 0x2c], dl
mov eax, dword [ebp - 0x7c]
cmp dl, byte [eax]
jne 0x4059b6
cmp byte [ebp + 0x2c], 0
je 0x4059aa
mov ecx, dword [ebp - 0x78]
mov dl, byte [ecx + 1]
mov byte [ebp + 0x2d], dl
mov eax, dword [ebp - 0x7c]
cmp dl, byte [eax + 1]
jne 0x4059b6
add dword [ebp - 0x78], 2
add dword [ebp - 0x7c], 2
cmp byte [ebp + 0x2d], 0
jne 0x405976
mov dword [ebp - 0xd8], 0
jmp 0x4059c1
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0xd8], ecx
mov edx, dword [ebp - 0xd8]
mov dword [ebp - 0x128], edx
cmp dword [ebp - 0x128], 0
je 0x4059e2
mov dword [ebp - 0xdc], 1
jmp 0x4059ec
mov dword [ebp - 0xdc], 0
mov al, byte [ebp - 0xdc]
mov byte [ebp + 0x30], al
mov ecx, dword [ebp + 0x3c]
and ecx, 2
je 0x405b08
and dword [ebp + 0x3c], 0xfffffffd
mov edx, dword [ebp + 0x54]
xor edx, dword [ebp + 0x54]
mov dword [ebp + 0x54], edx
jmp 0x405a19
mov eax, dword [ebp + 0x54]
add eax, 1
mov dword [ebp + 0x54], eax
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f1b2c
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x80], edx
mov ecx, dword [ebp + 0x54]
cmp ecx, dword [ebp - 0x80]
jge 0x405abd
mov dword [ebp - 0xe0], 1
jmp 0x405ac7
mov dword [ebp - 0xe0], 0
mov dl, byte [ebp - 0xe0]
mov byte [ebp + 0x2e], dl
mov eax, dword [ebp - 0x80]
xor eax, dword [ebp - 0x80]
mov dword [ebp - 0x80], eax
movzx ecx, byte [ebp + 0x2e]
test ecx, ecx
je 0x405aff
mov edx, dword [ebp + 0x54]
movsx eax, byte [ebp + edx + 0x39]
mov ecx, dword [ebp + 0x54]
movsx edx, byte [ebp + ecx + 0x39]
xor edx, eax
mov eax, dword [ebp + 0x54]
mov byte [ebp + eax + 0x39], dl
jmp 0x405a10
mov ecx, dword [ebp + 0x54]
xor ecx, dword [ebp + 0x54]
mov dword [ebp + 0x54], ecx
mov edx, dword [ebp + 0x3c]
and edx, 1
je 0x405c29
and dword [ebp + 0x3c], 0xfffffffe
mov eax, dword [ebp + 0x4c]
xor eax, dword [ebp + 0x4c]
mov dword [ebp + 0x4c], eax
jmp 0x405b2c
mov ecx, dword [ebp + 0x4c]
add ecx, 1
mov dword [ebp + 0x4c], ecx
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b2d
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp + 0x4c]
cmp edx, dword [ebp - 0x84]
jge 0x405bd5
mov dword [ebp - 0xe4], 1
jmp 0x405bdf
mov dword [ebp - 0xe4], 0
mov al, byte [ebp - 0xe4]
mov byte [ebp + 0x29], al
mov ecx, dword [ebp - 0x84]
xor ecx, dword [ebp - 0x84]
mov dword [ebp - 0x84], ecx
movzx edx, byte [ebp + 0x29]
test edx, edx
je 0x405c20
mov eax, dword [ebp + 0x4c]
movsx ecx, byte [ebp + eax + 0x5a]
mov edx, dword [ebp + 0x4c]
movsx eax, byte [ebp + edx + 0x5a]
xor eax, ecx
mov ecx, dword [ebp + 0x4c]
mov byte [ebp + ecx + 0x5a], al
jmp 0x405b23
mov edx, dword [ebp + 0x4c]
xor edx, dword [ebp + 0x4c]
mov dword [ebp + 0x4c], edx
movzx eax, byte [ebp + 0x30]
test eax, eax
je 0x4060a5
mov ecx, dword [ebp + 0x5c]
xor ecx, dword [ebp + 0x5c]
mov dword [ebp + 0x5c], ecx
jmp 0x405c49
mov edx, dword [ebp + 0x5c]
add edx, 1
mov dword [ebp + 0x5c], edx
mov eax, 4
shl eax, 0
mov ecx, dword [eax + 0x4122cc]
not ecx
xor ecx, 0x701f1b29
mov edx, 4
shl edx, 2
mov eax, dword [edx + 0x4122cc]
not eax
shr eax, 1
sub ecx, eax
mov edx, 4
imul eax, edx, 3
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 2
mov eax, 4
shl eax, 2
mov eax, dword [eax + 0x4122cc]
shl eax, 3
and edx, eax
add ecx, edx
mov edx, 4
shl edx, 1
mov eax, dword [edx + 0x4122cc]
shl eax, 1
mov edx, 4
imul edx, edx, 3
mov edx, dword [edx + 0x4122cc]
not edx
shr edx, 2
imul eax, edx
sub ecx, eax
mov eax, 4
shl eax, 1
mov edx, dword [eax + 0x4122cc]
not edx
shr edx, 3
add ecx, edx
mov dword [ebp - 0x88], ecx
mov eax, dword [ebp + 0x5c]
cmp eax, dword [ebp - 0x88]
jge 0x405cf3
mov dword [ebp - 0xe8], 1
jmp 0x405cfd
mov dword [ebp - 0xe8], 0
mov cl, byte [ebp - 0xe8]
mov byte [ebp + 0x31], cl
mov edx, dword [ebp - 0x88]
xor edx, dword [ebp - 0x88]
mov dword [ebp - 0x88], edx
movzx eax, byte [ebp + 0x31]
test eax, eax
je 0x405ea5
mov ecx, dword [ebp + 0x5c]
mov edx, dword [ebp + 0x5c]
mov al, byte [edx + 0x4120f0]
mov byte [ebp + ecx + 6], al
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f18cb
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x90], edx
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f182f
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x8c], edx
mov eax, dword [ebp - 0x90]
add eax, dword [ebp + 0x5c]
xor edx, edx
div dword [ebp - 0x8c]
mov ecx, dword [ebp + 0x5c]
movsx eax, byte [ebp + ecx + 6]
xor eax, edx
mov ecx, dword [ebp + 0x5c]
mov byte [ebp + ecx + 6], al
mov edx, dword [ebp - 0x8c]
xor edx, dword [ebp - 0x8c]
mov dword [ebp - 0x8c], edx
mov eax, dword [ebp - 0x90]
xor eax, dword [ebp - 0x90]
mov dword [ebp - 0x90], eax
jmp 0x405c40
mov ecx, 4
shl ecx, 0
mov edx, dword [ecx + 0x4122cc]
not edx
xor edx, 0x701f1b2e
mov eax, 4
shl eax, 2
mov ecx, dword [eax + 0x4122cc]
not ecx
shr ecx, 1
sub edx, ecx
mov eax, 4
imul ecx, eax, 3
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 2
mov ecx, 4
shl ecx, 2
mov ecx, dword [ecx + 0x4122cc]
shl ecx, 3
and eax, ecx
add edx, eax
mov eax, 4
shl eax, 1
mov ecx, dword [eax + 0x4122cc]
shl ecx, 1
mov eax, 4
imul eax, eax, 3
mov eax, dword [eax + 0x4122cc]
not eax
shr eax, 2
imul ecx, eax
sub edx, ecx
mov ecx, 4
shl ecx, 1
mov eax, dword [ecx + 0x4122cc]
not eax
shr eax, 3
add edx, eax
mov dword [ebp - 0x94], edx
mov ecx, dword [ebp + 0x5c]
xor ecx, dword [ebp + 0x5c]
mov edx, dword [ebp + 0x5c]
sub edx, dword [ebp - 0x94]
mov byte [ebp + edx + 6], cl
mov eax, dword [ebp - 0x94]
xor eax, dword [ebp - 0x94]
mov dword [ebp - 0x94], eax
mov ecx, dword [ebp + 0x5c]
xor ecx, dword [ebp + 0x5c]
mov dword [ebp + 0x5c], ecx
lea edx, [ebp - 0x26c]
push edx
mov eax, dword [ebp + 0x7c]
push eax
lea ecx, [ebp + 6]
push ecx
lea edx, [ebp - 0x5a0]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov eax, dword [ebp + 0x50]
xor eax, dword [ebp + 0x50]
mov dword [ebp + 0x50], eax
jmp 0x405f99
mov ecx, dword [ebp + 0x50]
add ecx, 1
mov dword [ebp + 0x50], ecx
mov edx, 4
shl edx, 0
mov eax, dword [edx + 0x4122cc]
not eax
xor eax, 0x701f1b29
mov ecx, 4
shl ecx, 2
mov edx, dword [ecx + 0x4122cc]
not edx
shr edx, 1
sub eax, edx
mov ecx, 4
imul edx, ecx, 3
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 2
mov edx, 4
shl edx, 2
mov edx, dword [edx + 0x4122cc]
shl edx, 3
and ecx, edx
add eax, ecx
mov ecx, 4
shl ecx, 1
mov edx, dword [ecx + 0x4122cc]
shl edx, 1
mov ecx, 4
imul ecx, ecx, 3
mov ecx, dword [ecx + 0x4122cc]
not ecx
shr ecx, 2
imul edx, ecx
sub eax, edx
mov edx, 4
shl edx, 1
mov ecx, dword [edx + 0x4122cc]
not ecx
shr ecx, 3
add eax, ecx
mov dword [ebp - 0x98], eax
mov edx, dword [ebp + 0x50]
cmp edx, dword [ebp - 0x98]
jge 0x406042
mov dword [ebp - 0xec], 1
jmp 0x40604c
mov dword [ebp - 0xec], 0
mov al, byte [ebp - 0xec]
mov byte [ebp + 0x32], al
mov ecx, dword [ebp - 0x98]
xor ecx, dword [ebp - 0x98]
mov dword [ebp - 0x98], ecx
movzx edx, byte [ebp + 0x32]
test edx, edx
je 0x40608d
mov eax, dword [ebp + 0x50]
movsx ecx, byte [ebp + eax + 6]
mov edx, dword [ebp + 0x50]
movsx eax, byte [ebp + edx + 6]
xor eax, ecx
mov ecx, dword [ebp + 0x50]
mov byte [ebp + ecx + 6], al
jmp 0x405f90
mov edx, dword [ebp + 0x50]
xor edx, dword [ebp + 0x50]
mov dword [ebp + 0x50], edx
lea eax, [ebp - 0x5a0]
push eax
call fcn.00404100
add esp, 4
lea ecx, [ebp - 0x298]
push ecx
mov edx, dword [ebp - 0xa8]
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x404571
add ebp, 0x74
mov esp, ebp
pop ebp
ret