Function at 0x40685e
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x188
mov dword [ebp - 8], ecx
mov dword [ecx], 0x40f06c
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
push ebx
push esi
sub eax, ecx
push edi
lea ecx, [ebp - 4]
push 1
cmp eax, ecx
pop ebx
jne 0x406923
cmp byte [ebp - 8], 0
je 0x4068bf
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4068bf
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4068bf
jl 0x4068bf
jne 0x4068b5
cmp byte [esi], 0
jne 0x4068b5
cmp byte [edi], 0
jne 0x4068bf
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x406897
xor eax, eax
mov esi, ebx
mov dword [ebp - 0x14], eax
lea edi, [ebp - 0x14]
test eax, eax
je 0x4068df
lea ecx, [ebp - 8]
dec ecx
mov dl, byte [ecx + esi]
cmp dl, byte [ecx + eax]
je 0x4068df
mov eax, dword [ebp + eax*4 - 0x18]
jmp 0x4068fa
inc esi
add edi, 4
lea ecx, [ebp - 8]
inc eax
dec ecx
mov dl, byte [ecx + esi]
cmp dl, byte [ecx + eax]
je 0x4068f4
mov dword [edi], eax
jmp 0x4068fa
mov ecx, dword [ebp + eax*4 - 0x18]
mov dword [edi], ecx
cmp esi, 0xa
jl 0x4068c9
mov ecx, ebx
mov eax, ebx
cmp eax, 5
jg 0x406923
test eax, eax
je 0x40691c
mov dl, byte [ebp + ecx - 9]
cmp dl, byte [ebp + eax - 7]
je 0x40691c
mov eax, dword [ebp + eax*4 - 0x1c]
jmp 0x40691e
inc ecx
inc eax
cmp ecx, 3
jle 0x406903
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0x148], 0x53
mov byte [ebp - 0x147], 0x48
mov byte [ebp - 0x146], 0x45
jne 0x40695e
push 2
xor ecx, ecx
mov dword [ebp - 0x14], 0x1c
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x406956
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0x145], 0x4c
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0x144], 0x4c
mov byte [ebp - 0x143], 0x33
jne 0x4069be
cmp byte [ebp - 8], 0
je 0x4069be
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4069be
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4069be
jl 0x4069be
jne 0x4069b4
cmp byte [esi], 0
jne 0x4069b4
cmp byte [edi], 0
jne 0x4069be
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x406996
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0x142], 0x32
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0x141], 0x2e
mov byte [ebp - 0x140], 0x44
mov byte [ebp - 0x13f], 0x4c
jne 0x406a15
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x4069f5
push 9
mov eax, ebx
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x406a0e
and byte [ebp - 0x13d], 0
lea eax, [ebp - 0x148]
push eax
mov byte [ebp - 0x13e], 0x4c
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ebx, eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x53
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x68
mov byte [ebp - 0xe2], 0x65
jne 0x406a6d
push 2
xor ecx, ecx
mov dword [ebp - 0x14], 0x1c
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x406a65
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x6c
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x6c
mov byte [ebp - 0xdf], 0x45
jne 0x406acd
cmp byte [ebp - 8], 0
je 0x406acd
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x406acd
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x406acd
jl 0x406acd
jne 0x406ac3
cmp byte [esi], 0
jne 0x406ac3
cmp byte [edi], 0
jne 0x406acd
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x406aa5
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x78
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x65
mov byte [ebp - 0xdc], 0x63
mov byte [ebp - 0xdb], 0x75
jne 0x406b25
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x406b04
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x406b1e
and byte [ebp - 0xd7], 0
lea eax, [ebp - 0xe4]
push eax
push ebx
mov byte [ebp - 0xda], 0x74
mov byte [ebp - 0xd9], 0x65
mov byte [ebp - 0xd8], 0x41
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 4], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0x148], 0x55
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0x147], 0x53
mov byte [ebp - 0x146], 0x45
jne 0x406b90
push 2
xor ecx, ecx
mov dword [ebp - 0x14], 0x1c
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x406b88
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0x145], 0x52
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0x144], 0x33
mov byte [ebp - 0x143], 0x32
jne 0x406bf0
cmp byte [ebp - 8], 0
je 0x406bf0
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x406bf0
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x406bf0
jl 0x406bf0
jne 0x406be6
cmp byte [esi], 0
jne 0x406be6
cmp byte [edi], 0
jne 0x406bf0
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x406bc8
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0x142], 0x2e
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0x141], 0x44
mov byte [ebp - 0x140], 0x4c
mov byte [ebp - 0x13f], 0x4c
jne 0x406c48
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x406c27
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x406c41
and byte [ebp - 0x13e], 0
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ebx, eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x47
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x65
mov byte [ebp - 0xe2], 0x74
jne 0x406c99
push 2
xor ecx, ecx
mov dword [ebp - 0x14], 0x1c
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x406c91
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x44
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x65
mov byte [ebp - 0xdf], 0x73
jne 0x406cf9
cmp byte [ebp - 8], 0
je 0x406cf9
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x406cf9
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x406cf9
jl 0x406cf9
jne 0x406cef
cmp byte [esi], 0
jne 0x406cef
cmp byte [edi], 0
jne 0x406cf9
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x406cd1
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x6b
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x74
mov byte [ebp - 0xdc], 0x6f
mov byte [ebp - 0xdb], 0x70
jne 0x406d51
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x406d30
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x406d4a
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xda], 0x57
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xd9], 0x69
mov byte [ebp - 0xd8], 0x6e
mov byte [ebp - 0xd7], 0x64
mov byte [ebp - 0xd6], 0x6f
jne 0x406db0
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x406d8f
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x406da9
and byte [ebp - 0xd4], 0
lea eax, [ebp - 0xe4]
push eax
push ebx
mov byte [ebp - 0xd5], 0x77
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 8], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0x148], 0x4b
sub eax, ecx
lea ecx, [ebp - 4]
lea eax, [ebp - 4]
mov byte [ebp - 0x147], 0x45
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0x146], 0x52
jne 0x406e15
push 2
xor ecx, ecx
mov dword [ebp - 0x14], 0x1c
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x406e0d
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0x145], 0x4e
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0x144], 0x45
mov byte [ebp - 0x143], 0x4c
jne 0x406e75
cmp byte [ebp - 8], 0
je 0x406e75
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x406e75
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x406e75
jl 0x406e75
jne 0x406e6b
cmp byte [esi], 0
jne 0x406e6b
cmp byte [edi], 0
jne 0x406e75
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x406e4d
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0x142], 0x33
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0x141], 0x32
mov byte [ebp - 0x140], 0x2e
mov byte [ebp - 0x13f], 0x44
jne 0x406ecd
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x406eac
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x406ec6
and byte [ebp - 0x13c], 0
lea eax, [ebp - 0x148]
push eax
mov byte [ebp - 0x13e], 0x4c
mov byte [ebp - 0x13d], 0x4c
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x50
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x72
mov byte [ebp - 0xe2], 0x6f
jne 0x406f2d
push 2
xor ecx, ecx
mov dword [ebp - 0x14], 0x1c
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x406f25
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x63
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x65
mov byte [ebp - 0xdf], 0x73
jne 0x406f8d
cmp byte [ebp - 8], 0
je 0x406f8d
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x406f8d
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x406f8d
jl 0x406f8d
jne 0x406f83
cmp byte [esi], 0
jne 0x406f83
cmp byte [edi], 0
jne 0x406f8d
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x406f65
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x73
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x33
mov byte [ebp - 0xdc], 0x32
mov byte [ebp - 0xdb], 0x4e
jne 0x406fe5
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x406fc4
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x406fde
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
and byte [ebp - 0xd7], 0
lea eax, [ebp - 0xe4]
mov byte [ebp - 0xda], 0x65
push eax
mov byte [ebp - 0xd9], 0x78
push dword [ebp - 0xc]
mov byte [ebp - 0xd8], 0x74
call ebx
mov ecx, dword [ebp - 8]
mov dword [ecx + 0xc], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x50
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x72
mov byte [ebp - 0xe2], 0x6f
jne 0x407054
push 2
xor ecx, ecx
mov dword [ebp - 0x14], 0x1c
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x40704c
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x63
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x65
mov byte [ebp - 0xdf], 0x73
jne 0x4070b4
cmp byte [ebp - 8], 0
je 0x4070b4
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4070b4
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4070b4
jl 0x4070b4
jne 0x4070aa
cmp byte [esi], 0
jne 0x4070aa
cmp byte [edi], 0
jne 0x4070b4
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x40708c
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x73
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x33
mov byte [ebp - 0xdc], 0x32
mov byte [ebp - 0xdb], 0x46
jne 0x40710c
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x4070eb
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407105
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
and byte [ebp - 0xd6], 0
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xda], 0x69
mov byte [ebp - 0xd9], 0x72
mov byte [ebp - 0xd8], 0x73
mov byte [ebp - 0xd7], 0x74
jne 0x40716b
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x40714a
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407164
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call ebx
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x10], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x43
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x72
mov byte [ebp - 0xe2], 0x65
jne 0x4071b8
push 2
xor ecx, ecx
mov dword [ebp - 0x14], 0x1c
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x4071b0
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x61
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x74
mov byte [ebp - 0xdf], 0x65
jne 0x407218
cmp byte [ebp - 8], 0
je 0x407218
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x407218
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x407218
jl 0x407218
jne 0x40720e
cmp byte [esi], 0
jne 0x40720e
cmp byte [edi], 0
jne 0x407218
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x4071f0
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x54
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x6f
mov byte [ebp - 0xdc], 0x6f
mov byte [ebp - 0xdb], 0x6c
jne 0x407270
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x40724f
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407269
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xda], 0x68
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xd9], 0x65
mov byte [ebp - 0xd8], 0x6c
mov byte [ebp - 0xd7], 0x70
mov byte [ebp - 0xd6], 0x33
jne 0x4072cf
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x4072ae
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x4072c8
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xd5], 0x32
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xd4], 0x53
mov byte [ebp - 0xd3], 0x6e
mov byte [ebp - 0xd2], 0x61
jne 0x407358
xor eax, eax
inc eax
cmp eax, 0xf
jl 0x407302
xor edx, edx
xor ecx, ecx
xor eax, eax
test ecx, ecx
jl 0x40734f
test eax, eax
je 0x40733c
cmp eax, edx
je 0x40733c
lea esi, [eax + ecx - 4]
lea edi, [eax + ecx - 4]
mov esi, dword [ebp + esi*4 - 0x18c]
add esi, dword [ebp + edi*4 - 0x188]
lea edi, [eax + ecx]
mov dword [ebp + edi*4 - 0x188], esi
jmp 0x40734a
lea esi, [eax + ecx]
mov dword [ebp + esi*4 - 0x188], 1
inc eax
cmp eax, edx
jle 0x407312
add ecx, 4
inc edx
cmp ecx, 0x3c
jl 0x40730c
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xd1], 0x70
imul ecx, edx
cmp ecx, eax
jne 0x40738c
xor ecx, ecx
xor edx, edx
cmp byte [ecx], 0
je 0x407380
inc ecx
jmp 0x407378
mov al, byte [edx]
test al, al
je 0x40738c
mov byte [ecx], al
inc ecx
inc edx
jmp 0x407380
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
and byte [ebp - 0xcc], 0
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xd0], 0x73
mov byte [ebp - 0xcf], 0x68
mov byte [ebp - 0xce], 0x6f
mov byte [ebp - 0xcd], 0x74
jne 0x4073fb
mov ebx, dword [ebp - 4]
push 1
pop edi
and dword [ebp - 4], 0
push 1
pop ecx
cmp edi, ecx
jle 0x4073f0
lea esi, [ebp + ebx*4 - 0x18]
mov eax, edi
cdq
idiv ecx
test edx, edx
jne 0x4073eb
add dword [ebp - 4], ecx
mov dword [esi], ecx
inc ebx
add esi, 4
inc ecx
cmp ecx, edi
jl 0x4073d9
xor ebx, ebx
inc edi
cmp edi, 0x3e8
jle 0x4073ca
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x14], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x47
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x65
mov byte [ebp - 0xe2], 0x74
jne 0x40744d
push 0x1c
xor ecx, ecx
pop ebx
lea eax, [ebp - 0x18]
push 2
mov dword [ebp - 0x14], ebx
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407443
jmp 0x407450
push 0x1c
pop ebx
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x54
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x69
mov byte [ebp - 0xdf], 0x63
jne 0x4074b0
cmp byte [ebp - 8], 0
je 0x4074b0
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4074b0
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4074b0
jl 0x4074b0
jne 0x4074a6
cmp byte [esi], 0
jne 0x4074a6
cmp byte [edi], 0
jne 0x4074b0
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x407488
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x6b
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x43
mov byte [ebp - 0xdc], 0x6f
mov byte [ebp - 0xdb], 0x75
jne 0x407508
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x4074e7
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407501
and byte [ebp - 0xd8], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xda], 0x6e
push dword [ebp - 0xc]
mov byte [ebp - 0xd9], 0x74
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x18], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x57
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x72
mov byte [ebp - 0xe2], 0x69
jne 0x40756a
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407562
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x74
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x65
mov byte [ebp - 0xdf], 0x46
jne 0x4075ca
cmp byte [ebp - 8], 0
je 0x4075ca
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4075ca
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4075ca
jl 0x4075ca
jne 0x4075c0
cmp byte [esi], 0
jne 0x4075c0
cmp byte [edi], 0
jne 0x4075ca
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x4075a2
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
and byte [ebp - 0xdb], 0
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xde], 0x69
mov byte [ebp - 0xdd], 0x6c
mov byte [ebp - 0xdc], 0x65
jne 0x407622
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x407601
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x40761b
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x1c], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x52
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x65
mov byte [ebp - 0xe2], 0x61
jne 0x40766f
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407667
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x64
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x46
mov byte [ebp - 0xdf], 0x69
jne 0x4076cf
cmp byte [ebp - 8], 0
je 0x4076cf
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4076cf
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4076cf
jl 0x4076cf
jne 0x4076c5
cmp byte [esi], 0
jne 0x4076c5
cmp byte [edi], 0
jne 0x4076cf
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x4076a7
and byte [ebp - 0xdc], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xde], 0x6c
push dword [ebp - 0xc]
mov byte [ebp - 0xdd], 0x65
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x20], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x47
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x65
mov byte [ebp - 0xe2], 0x74
jne 0x407731
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407729
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x54
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x65
mov byte [ebp - 0xdf], 0x6d
jne 0x407791
cmp byte [ebp - 8], 0
je 0x407791
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x407791
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x407791
jl 0x407791
jne 0x407787
cmp byte [esi], 0
jne 0x407787
cmp byte [edi], 0
jne 0x407791
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x407769
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x70
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x50
mov byte [ebp - 0xdc], 0x61
mov byte [ebp - 0xdb], 0x74
jne 0x4077e9
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x4077c8
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x4077e2
and byte [ebp - 0xd8], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xda], 0x68
push dword [ebp - 0xc]
mov byte [ebp - 0xd9], 0x41
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x24], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x47
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x65
mov byte [ebp - 0xe2], 0x74
jne 0x40784b
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407843
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x4d
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x6f
mov byte [ebp - 0xdf], 0x64
jne 0x4078ab
cmp byte [ebp - 8], 0
je 0x4078ab
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4078ab
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4078ab
jl 0x4078ab
jne 0x4078a1
cmp byte [esi], 0
jne 0x4078a1
cmp byte [edi], 0
jne 0x4078ab
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x407883
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x75
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x6c
mov byte [ebp - 0xdc], 0x65
mov byte [ebp - 0xdb], 0x46
jne 0x407903
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x4078e2
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x4078fc
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xda], 0x69
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xd9], 0x6c
mov byte [ebp - 0xd8], 0x65
mov byte [ebp - 0xd7], 0x4e
mov byte [ebp - 0xd6], 0x61
jne 0x407962
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x407941
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x40795b
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
and byte [ebp - 0xd2], 0
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xd5], 0x6d
mov byte [ebp - 0xd4], 0x65
mov byte [ebp - 0xd3], 0x41
jne 0x4079eb
xor eax, eax
inc eax
cmp eax, 0xf
jl 0x407995
xor edx, edx
xor ecx, ecx
xor eax, eax
test ecx, ecx
jl 0x4079e2
test eax, eax
je 0x4079cf
cmp eax, edx
je 0x4079cf
lea esi, [eax + ecx - 4]
lea edi, [eax + ecx - 4]
mov esi, dword [ebp + esi*4 - 0x18c]
add esi, dword [ebp + edi*4 - 0x188]
lea edi, [eax + ecx]
mov dword [ebp + edi*4 - 0x188], esi
jmp 0x4079dd
lea esi, [eax + ecx]
mov dword [ebp + esi*4 - 0x188], 1
inc eax
cmp eax, edx
jle 0x4079a5
add ecx, 4
inc edx
cmp ecx, 0x3c
jl 0x40799f
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x28], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x47
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x65
mov byte [ebp - 0xe2], 0x74
jne 0x407a38
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407a30
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x46
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x69
mov byte [ebp - 0xdf], 0x6c
jne 0x407a98
cmp byte [ebp - 8], 0
je 0x407a98
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x407a98
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x407a98
jl 0x407a98
jne 0x407a8e
cmp byte [esi], 0
jne 0x407a8e
cmp byte [edi], 0
jne 0x407a98
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x407a70
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x65
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x53
mov byte [ebp - 0xdc], 0x69
mov byte [ebp - 0xdb], 0x7a
jne 0x407af0
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x407acf
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407ae9
and byte [ebp - 0xd9], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xda], 0x65
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x2c], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x43
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x72
mov byte [ebp - 0xe2], 0x65
jne 0x407b4b
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407b43
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x61
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x74
mov byte [ebp - 0xdf], 0x65
jne 0x407bab
cmp byte [ebp - 8], 0
je 0x407bab
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x407bab
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x407bab
jl 0x407bab
jne 0x407ba1
cmp byte [esi], 0
jne 0x407ba1
cmp byte [edi], 0
jne 0x407bab
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x407b83
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x46
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x69
mov byte [ebp - 0xdc], 0x6c
mov byte [ebp - 0xdb], 0x65
jne 0x407c03
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x407be2
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407bfc
and byte [ebp - 0xd9], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xda], 0x41
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x30], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x43
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x72
mov byte [ebp - 0xe2], 0x65
jne 0x407c5e
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407c56
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x61
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x74
mov byte [ebp - 0xdf], 0x65
jne 0x407cbe
cmp byte [ebp - 8], 0
je 0x407cbe
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x407cbe
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x407cbe
jl 0x407cbe
jne 0x407cb4
cmp byte [esi], 0
jne 0x407cb4
cmp byte [edi], 0
jne 0x407cbe
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x407c96
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x44
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x69
mov byte [ebp - 0xdc], 0x72
mov byte [ebp - 0xdb], 0x65
jne 0x407d16
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x407cf5
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407d0f
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xda], 0x63
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xd9], 0x74
mov byte [ebp - 0xd8], 0x6f
mov byte [ebp - 0xd7], 0x72
mov byte [ebp - 0xd6], 0x79
jne 0x407d75
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x407d54
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407d6e
and byte [ebp - 0xd4], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xd5], 0x41
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x34], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x43
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x6c
mov byte [ebp - 0xe2], 0x6f
jne 0x407dd0
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407dc8
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x73
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x65
mov byte [ebp - 0xdf], 0x48
jne 0x407e30
cmp byte [ebp - 8], 0
je 0x407e30
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x407e30
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x407e30
jl 0x407e30
jne 0x407e26
cmp byte [esi], 0
jne 0x407e26
cmp byte [edi], 0
jne 0x407e30
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x407e08
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xde], 0x61
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xdd], 0x6e
mov byte [ebp - 0xdc], 0x64
mov byte [ebp - 0xdb], 0x6c
jne 0x407e88
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x407e67
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x407e81
and byte [ebp - 0xd9], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xda], 0x65
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 4]
mov dword [ecx + 0x38], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
imul ecx, edx
cmp ecx, eax
jne 0x407f7b
xor eax, eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
push 3
pop ebx
xor edx, edx
xor eax, eax
lea ecx, [eax + eax*2]
add edx, dword [ebp + ecx*4 - 0x1c]
inc eax
cmp eax, 3
jl 0x407ee1
push 2
xor esi, esi
pop eax
lea ecx, [esi + eax*2]
mov edi, eax
lea ecx, [ebp + ecx*4 - 0x1c]
cmp edi, esi
je 0x407f02
add edx, dword [ecx]
inc edi
add ecx, 8
cmp edi, eax
jle 0x407efc
inc esi
dec eax
cmp eax, 0xffffffff
jg 0x407ef3
dec ebx
jne 0x407edd
dec dword [ebp - 4]
jne 0x407eda
push 1
lea eax, [ebp - 0x1c]
pop ebx
push 0xa
pop edx
cmp ebx, edx
jge 0x407f3d
lea ecx, [eax + 4]
sub edx, ebx
mov esi, dword [eax]
mov edi, dword [ecx]
cmp esi, edi
jle 0x407f37
mov dword [ecx], esi
mov dword [eax], edi
add ecx, 4
dec edx
jne 0x407f2b
inc ebx
add eax, 4
cmp ebx, 0xb
jl 0x407f1f
xor eax, eax
xor ecx, ecx
cmp byte [eax], 0
je 0x407f53
inc eax
inc ecx
jmp 0x407f4a
push 0x64
pop esi
push 0x64
lea eax, [ebp + 0xac]
pop edx
mov edi, dword [eax - 4]
lea ecx, [eax - 4]
mov dword [eax], edi
dec edx
mov eax, ecx
jne 0x407f5f
mov eax, dword [ebp + 0xac]
dec esi
mov dword [ebp - 0xe4], eax
jne 0x407f56
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0x148], 0x4d
mov byte [ebp - 0x147], 0x53
mov byte [ebp - 0x146], 0x56
jne 0x407fb7
push 0x1c
xor ecx, ecx
pop ebx
lea eax, [ebp - 0x18]
push 2
mov dword [ebp - 0x14], ebx
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x407fad
jmp 0x407fba
push 0x1c
pop ebx
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0x145], 0x43
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0x144], 0x52
mov byte [ebp - 0x143], 0x54
jne 0x40801a
cmp byte [ebp - 8], 0
je 0x40801a
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x40801a
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x40801a
jl 0x40801a
jne 0x408010
cmp byte [esi], 0
jne 0x408010
cmp byte [edi], 0
jne 0x40801a
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x407ff2
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0x142], 0x2e
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0x141], 0x44
mov byte [ebp - 0x140], 0x4c
mov byte [ebp - 0x13f], 0x4c
jne 0x408072
push 3
pop ecx
push 2
pop esi
mov eax, ecx
mov ecx, esi
cdq
idiv esi
mov eax, ecx
mov edi, edx
cdq
idiv edi
mov esi, edi
test edx, edx
jne 0x408051
push 1
pop eax
push 9
pop ecx
dec ecx
lea eax, [eax + eax + 2]
jne 0x40806b
and byte [ebp - 0x13e], 0
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0xc], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x73
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x74
mov byte [ebp - 0xe2], 0x72
jne 0x4080c0
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x4080b8
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x72
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x63
mov byte [ebp - 0xdf], 0x68
jne 0x408120
cmp byte [ebp - 8], 0
je 0x408120
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x408120
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x408120
jl 0x408120
jne 0x408116
cmp byte [esi], 0
jne 0x408116
cmp byte [edi], 0
jne 0x408120
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x4080f8
and byte [ebp - 0xdd], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xde], 0x72
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x3c], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x73
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x74
mov byte [ebp - 0xe2], 0x72
jne 0x40817b
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x408173
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x6c
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x65
mov byte [ebp - 0xdf], 0x6e
jne 0x4081db
cmp byte [ebp - 8], 0
je 0x4081db
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4081db
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4081db
jl 0x4081db
jne 0x4081d1
cmp byte [esi], 0
jne 0x4081d1
cmp byte [edi], 0
jne 0x4081db
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x4081b3
and byte [ebp - 0xde], 0
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x40], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x73
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x74
mov byte [ebp - 0xe2], 0x72
jne 0x40822f
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x408227
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x63
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x70
mov byte [ebp - 0xdf], 0x79
jne 0x40828f
cmp byte [ebp - 8], 0
je 0x40828f
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x40828f
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x40828f
jl 0x40828f
jne 0x408285
cmp byte [esi], 0
jne 0x408285
cmp byte [edi], 0
jne 0x40828f
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x408267
and byte [ebp - 0xde], 0
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x44], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x73
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x74
mov byte [ebp - 0xe2], 0x72
jne 0x4082e3
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x4082db
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x63
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x6d
mov byte [ebp - 0xdf], 0x70
jne 0x408343
cmp byte [ebp - 8], 0
je 0x408343
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x408343
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x408343
jl 0x408343
jne 0x408339
cmp byte [esi], 0
jne 0x408339
cmp byte [edi], 0
jne 0x408343
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x40831b
and byte [ebp - 0xde], 0
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x48], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x73
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x74
mov byte [ebp - 0xe2], 0x72
jne 0x408397
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x40838f
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x63
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x68
mov byte [ebp - 0xdf], 0x72
jne 0x4083f7
cmp byte [ebp - 8], 0
je 0x4083f7
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4083f7
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4083f7
jl 0x4083f7
jne 0x4083ed
cmp byte [esi], 0
jne 0x4083ed
cmp byte [edi], 0
jne 0x4083f7
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x4083cf
and byte [ebp - 0xde], 0
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x4c], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x73
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x70
mov byte [ebp - 0xe2], 0x72
jne 0x40844b
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x408443
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x69
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x6e
mov byte [ebp - 0xdf], 0x74
jne 0x4084ab
cmp byte [ebp - 8], 0
je 0x4084ab
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x4084ab
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x4084ab
jl 0x4084ab
jne 0x4084a1
cmp byte [esi], 0
jne 0x4084a1
cmp byte [edi], 0
jne 0x4084ab
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x408483
and byte [ebp - 0xdd], 0
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 0xde], 0x66
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x50], eax
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
mov byte [ebp - 0xe4], 0x6d
sub eax, ecx
lea ecx, [ebp - 4]
cmp eax, ecx
mov byte [ebp - 0xe3], 0x65
mov byte [ebp - 0xe2], 0x6d
jne 0x408506
push 2
xor ecx, ecx
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x18]
pop edx
add ecx, dword [eax]
add eax, 4
dec edx
jne 0x4084fe
lea eax, [ebp - 4]
lea ecx, [ebp - 4]
add eax, ecx
lea ecx, [ebp - 4]
lea edx, [ebp - 4]
mov byte [ebp - 0xe1], 0x73
imul ecx, edx
cmp ecx, eax
mov byte [ebp - 0xe0], 0x65
mov byte [ebp - 0xdf], 0x74
jne 0x408566
cmp byte [ebp - 8], 0
je 0x408566
lea esi, [ebp - 7]
lea edi, [ebp - 3]
xor eax, eax
mov cl, byte [ebp + eax - 4]
test cl, cl
je 0x408566
mov dl, byte [ebp + eax - 8]
cmp dl, cl
jg 0x408566
jl 0x408566
jne 0x40855c
cmp byte [esi], 0
jne 0x40855c
cmp byte [edi], 0
jne 0x408566
inc esi
inc eax
inc edi
cmp byte [ebp + eax - 8], 0
jne 0x40853e
and byte [ebp - 0xde], 0
lea eax, [ebp - 0xe4]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
pop edi
pop esi
pop ebx
mov dword [ecx + 0x54], eax
mov eax, ecx
leave
ret