Function at 0x5ed450
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x7ae182
mov eax, dword fs:[0]
push eax
sub esp, 0x140
mov eax, dword [0x82f184]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, edx
mov dword [ebp - 0xa0], edi
mov eax, ecx
mov dword [ebp - 0xd4], eax
call fcn.00772360
xorps xmm0, xmm0
lea ecx, [ebp - 0x78]
push 6
movups xmmword [ebp - 0x78], xmm0
movq qword [ebp - 0x68], xmm0
call fcn.00770fe0
mov dword [ebp - 4], 0
xorps xmm0, xmm0
movq qword [ebp - 0x60], xmm0
mov eax, 0xe
movaps xmm0, xmmword [0x7e3620]
xor ecx, ecx
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x8c], eax
movups xmmword [ebp - 0x88], xmm0
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5ed4e0
lea ecx, [ebp - 0x88]
mov byte [ebp + eax - 0x88], 0
mov dword [ebp - 0xa8], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ed522
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
lea ecx, [ebp - 0xb8]
call fcn.00407ab0
mov byte [ebp - 4], 1
cmp dword [edi + 4], 0
jne 0x5ed562
xor eax, eax
mov dword [ebp - 0xdc], 0xf
mov dword [ebp - 0xe0], eax
mov byte [ebp - 0xf0], al
jmp 0x5ed585
lea eax, [ebp - 0xb8]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0xf0]
mov ecx, edi
push eax
call fcn.00647960
mov eax, dword [ebp - 0xe0]
xorps xmm0, xmm0
mov dword [ebp - 0x4c], 0
movq qword [ebp - 0x54], xmm0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
mov byte [ebp - 4], 3
test eax, eax
jne 0x5ed5d8
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
call fcn.00404220
xor esi, esi
mov dword [ebp - 0xd0], esi
jmp 0x5ed6db
lea edx, [ebp - 0xf0]
lea ecx, [ebp - 0x40]
call fcn.00405660
mov edx, 0x5b
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x40]
call fcn.00574bd0
mov edx, 0x5d
lea ecx, [ebp - 0x40]
call fcn.00574bd0
push 1
xor eax, eax
mov dword [ebp - 0x18], 0
push 0x7cd380
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.004044f0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 5
push eax
lea edx, [ebp - 0x40]
lea ecx, [ebp - 0x84]
call fcn.00574db0
xor esi, esi
mov dword [ebp - 0xd8], eax
lea ecx, [ebp - 0x54]
mov dword [ebp - 0xd0], esi
add esp, 4
mov dword [ebp - 0xcc], esi
cmp ecx, eax
je 0x5ed68e
call fcn.00404220
mov ecx, dword [ebp - 0xd8]
mov eax, dword [ecx + 4]
mov esi, dword [ecx]
mov dword [ebp - 0xd0], eax
mov eax, dword [ecx + 8]
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ebp - 0xcc], eax
mov dword [ecx + 8], 0
lea ecx, [ebp - 0x84]
call fcn.00404220
lea ecx, [ebp - 0x28]
call fcn.00404490
mov eax, dword [ebp - 0xd0]
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xcc]
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
call fcn.00404490
lea ecx, [ebp - 0x54]
call fcn.00404220
lea ecx, [ebp - 0xf0]
call fcn.00407a10
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 8
call fcn.00407a10
cmp esi, dword [ebp - 0xd0]
je 0x5ed74d
mov edi, dword [ebp - 0xd0]
push esi
lea ecx, [ebp - 0x28]
call fcn.00404120
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x40]
call fcn.00770cc0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x78]
call fcn.00771cc0
lea ecx, [ebp - 0x40]
call fcn.007711e0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00404490
add esi, 0x18
cmp esi, edi
jne 0x5ed703
mov edi, dword [ebp - 0xa0]
sub esp, 0x18
lea eax, [ebp - 0x78]
mov ecx, esp
mov dword [ebp - 0xa0], esp
push eax
call fcn.00770aa0
mov byte [ebp - 4], 0xb
mov eax, 0xe
movaps xmm0, xmmword [0x7e3620]
xor ecx, ecx
mov dword [ebp - 0x8c], eax
movups xmmword [ebp - 0x88], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5ed780
mov esi, dword [ebp - 0xd4]
mov ecx, esi
mov byte [ebp + eax - 0x88], 0
lea eax, [ebp - 0x88]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.007712b0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xa0], esp
push 0x7d5458
call fcn.00770df0
mov byte [ebp - 4], 0xc
mov eax, 0x15
movaps xmm0, xmmword [0x7e3940]
xor ecx, ecx
mov dword [ebp - 0x44], eax
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x30], 0xb9bf96a0
mov dword [ebp - 0x2c], 0xcda0
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x40], al
inc ecx
mov eax, dword [ebp - 0x44]
cmp ecx, eax
jb 0x5ed800
mov byte [ebp + eax - 0x40], 0
mov ecx, esi
lea eax, [ebp - 0x40]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.007712b0
movaps xmm0, xmmword [0x7e3930]
mov eax, 0x11
mov dword [ebp - 0x90], eax
xor ecx, ecx
movups xmmword [ebp - 0x8c], xmm0
mov dword [ebp - 0x7c], 0xc9b1
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x8c], al
inc ecx
mov eax, dword [ebp - 0x90]
cmp ecx, eax
jb 0x5ed850
lea ecx, [ebp - 0x8c]
mov byte [ebp + eax - 0x8c], 0
mov dword [ebp - 0x30], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ed890
sub ecx, edx
lea eax, [ebp - 0x8c]
push ecx
push eax
lea ecx, [ebp - 0x40]
call fcn.00407ab0
mov byte [ebp - 4], 0xd
sub esp, 0x18
cmp dword [edi + 4], 0
mov dword [ebp - 0xd8], esp
mov dword [ebp - 0xa0], esp
jne 0x5ed8e5
mov dword [ebp - 0xa8], 0
lea eax, [ebp - 0xb8]
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
jmp 0x5ed913
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0xb8]
mov ecx, edi
push eax
call fcn.00647960
cmp dword [ebp - 0xa4], 0x10
lea eax, [ebp - 0xb8]
cmovae eax, dword [ebp - 0xb8]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
lea ecx, [ebp - 0xb8]
mov esi, eax
call fcn.00407a10
mov ecx, dword [ebp - 0xa0]
test esi, esi
setne al
movzx eax, al
push eax
call fcn.00771150
mov byte [ebp - 4], 0xe
mov eax, 0x11
movaps xmm0, xmmword [0x7e3930]
xor ecx, ecx
mov dword [ebp - 0x28], eax
movups xmmword [ebp - 0x24], xmm0
mov dword [ebp - 0x14], 0xc9b1
nop
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x24], al
inc ecx
mov eax, dword [ebp - 0x28]
cmp ecx, eax
jb 0x5ed960
mov esi, dword [ebp - 0xd4]
mov ecx, esi
mov byte [ebp + eax - 0x24], 0
lea eax, [ebp - 0x24]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0xd
call fcn.007712b0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e32c0]
mov eax, 0xc
mov dword [ebp - 0x8c], eax
xor ecx, ecx
movups xmmword [ebp - 0x88], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5ed9c0
lea ecx, [ebp - 0x88]
mov byte [ebp + eax - 0x88], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5eda00
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0xf
cmp dword [edi + 4], 0
jne 0x5eda37
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5eda4e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x11
mov eax, 0xc
movaps xmm0, xmmword [0x7e32c0]
xor ecx, ecx
mov dword [ebp - 0xb4], eax
movups xmmword [ebp - 0xb0], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb0], al
inc ecx
mov eax, dword [ebp - 0xb4]
cmp ecx, eax
jb 0x5eda85
mov byte [ebp + eax - 0xb0], 0
mov ecx, esi
lea eax, [ebp - 0xb0]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x10
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
mov dword [ebp - 0x88], 0xb
xor ecx, ecx
mov dword [ebp - 0x84], 0xd2ccd8de
mov dword [ebp - 0x80], 0xe0d0d2df
mov dword [ebp - 0x7c], 0xc3aeb3b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x84], al
inc ecx
mov eax, dword [ebp - 0x88]
cmp ecx, eax
jb 0x5edaf4
lea ecx, [ebp - 0x84]
mov byte [ebp + eax - 0x84], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5edb30
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x12
cmp dword [edi + 4], 0
jne 0x5edb67
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5edb7e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x14
xor ecx, ecx
mov dword [ebp - 0xb0], 0xb
mov dword [ebp - 0xac], 0xd2ccd8de
mov dword [ebp - 0xa8], 0xe0d0d2df
mov dword [ebp - 0xa4], 0xc3aeb3b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xac], al
inc ecx
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
jb 0x5edbc4
mov byte [ebp + eax - 0xac], 0
mov ecx, esi
lea eax, [ebp - 0xac]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x13
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
push 2
push 0x7d7a28
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00407ab0
mov byte [ebp - 4], 0x15
cmp dword [edi + 4], 0
jne 0x5edc4e
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5edc65
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
push 0x7d7a28
mov ecx, esi
mov byte [ebp - 4], 0x17
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x16
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
mov eax, 9
mov dword [ebp - 0x84], 0xdcdbd4d1
mov dword [ebp - 0x88], eax
xor ecx, ecx
mov dword [ebp - 0x80], 0xcdcbe2d9
mov dword [ebp - 0x7c], 0xc1ac
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x84], al
inc ecx
mov eax, dword [ebp - 0x88]
cmp ecx, eax
jb 0x5edcd1
lea ecx, [ebp - 0x84]
mov byte [ebp + eax - 0x84], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5edd10
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x18
cmp dword [edi + 4], 0
jne 0x5edd47
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5edd5e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x1a
mov eax, 9
mov dword [ebp - 0xb0], eax
xor ecx, ecx
mov dword [ebp - 0xac], 0xdcdbd4d1
mov dword [ebp - 0xa8], 0xcdcbe2d9
mov dword [ebp - 0xa4], 0xc1ac
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xac], al
inc ecx
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
jb 0x5edda5
mov byte [ebp + eax - 0xac], 0
mov ecx, esi
lea eax, [ebp - 0xac]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x19
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e3d50]
mov eax, 0x15
mov dword [ebp - 0x94], eax
xor ecx, ecx
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0xa6abbba9
mov dword [ebp - 0x7c], 0xcdbf
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x90], al
inc ecx
mov eax, dword [ebp - 0x94]
cmp ecx, eax
jb 0x5ede20
lea ecx, [ebp - 0x90]
mov byte [ebp + eax - 0x90], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ede60
sub ecx, edx
lea eax, [ebp - 0x90]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x1b
cmp dword [edi + 4], 0
jne 0x5ede97
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5edeae
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x1d
mov eax, 0x15
movaps xmm0, xmmword [0x7e3d50]
xor ecx, ecx
mov dword [ebp - 0xbc], eax
movups xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0xa8], 0xa6abbba9
mov dword [ebp - 0xa4], 0xcdbf
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb8], al
inc ecx
mov eax, dword [ebp - 0xbc]
cmp ecx, eax
jb 0x5edf00
mov byte [ebp + eax - 0xb8], 0
mov ecx, esi
lea eax, [ebp - 0xb8]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x1c
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
lea ecx, [ebp - 0x78]
call fcn.00772360
movaps xmm0, xmmword [0x7e3e90]
xor ecx, ecx
mov dword [ebp - 0x8c], 0xf
movups xmmword [ebp - 0x88], xmm0
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5edf70
lea ecx, [ebp - 0x88]
mov byte [ebp + eax - 0x88], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5edfb0
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x1e
cmp dword [edi + 4], 0
jne 0x5edfe7
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5edffe
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0xb8]
call fcn.00770c70
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0x20
push eax
lea ecx, [ebp - 0x78]
call fcn.00771cc0
lea ecx, [ebp - 0xb8]
call fcn.007711e0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
sub esp, 0x18
lea eax, [ebp - 0x78]
mov ecx, esp
mov dword [ebp - 0xa0], esp
push eax
call fcn.00770aa0
mov byte [ebp - 4], 0x21
xor ecx, ecx
movaps xmm0, xmmword [0x7e3e90]
mov dword [ebp - 0x8c], 0xf
movups xmmword [ebp - 0x88], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5ee075
mov byte [ebp + eax - 0x88], 0
mov ecx, esi
lea eax, [ebp - 0x88]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.007712b0
mov dword [ebp - 0x88], 0xb
xor ecx, ecx
mov dword [ebp - 0x84], 0xcfc9d7d1
mov dword [ebp - 0x80], 0xe0cad3dd
mov dword [ebp - 0x7c], 0xc3aeb3b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x84], al
inc ecx
mov eax, dword [ebp - 0x88]
cmp ecx, eax
jb 0x5ee0d0
lea ecx, [ebp - 0x84]
mov byte [ebp + eax - 0x84], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ee110
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x22
cmp dword [edi + 4], 0
jne 0x5ee147
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ee15e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x24
xor ecx, ecx
mov dword [ebp - 0xb0], 0xb
mov dword [ebp - 0xac], 0xcfc9d7d1
mov dword [ebp - 0xa8], 0xe0cad3dd
mov dword [ebp - 0xa4], 0xc3aeb3b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xac], al
inc ecx
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
jb 0x5ee1a4
mov byte [ebp + eax - 0xac], 0
mov ecx, esi
lea eax, [ebp - 0xac]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x23
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e3bf0]
xor ecx, ecx
mov dword [ebp - 0x94], 0x17
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0xb9abb997
mov dword [ebp - 0x7c], 0xcfbda0ad
nop word [eax + eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x90], al
inc ecx
mov eax, dword [ebp - 0x94]
cmp ecx, eax
jb 0x5ee220
lea ecx, [ebp - 0x90]
mov byte [ebp + eax - 0x90], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ee260
sub ecx, edx
lea eax, [ebp - 0x90]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x25
cmp dword [edi + 4], 0
jne 0x5ee297
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ee2ae
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x26
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x27
xor ecx, ecx
movaps xmm0, xmmword [0x7e3bf0]
mov dword [ebp - 0xbc], 0x17
movups xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0xa8], 0xb9abb997
mov dword [ebp - 0xa4], 0xcfbda0ad
nop dword [eax + eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb8], al
inc ecx
mov eax, dword [ebp - 0xbc]
cmp ecx, eax
jb 0x5ee300
mov byte [ebp + eax - 0xb8], 0
mov ecx, esi
lea eax, [ebp - 0xb8]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x26
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
mov dword [ebp - 0xac], 7
xor ecx, ecx
mov dword [ebp - 0xa8], 0xccc3dcd3
mov dword [ebp - 0xa4], 0xbfdacfd3
nop dword [eax + eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xa8], al
inc ecx
mov eax, dword [ebp - 0xac]
cmp ecx, eax
jb 0x5ee370
lea ecx, [ebp - 0xa8]
mov byte [ebp + eax - 0xa8], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ee3b0
sub ecx, edx
lea eax, [ebp - 0xa8]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x28
cmp dword [edi + 4], 0
jne 0x5ee3e7
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ee3fe
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x2a
xor ecx, ecx
mov dword [ebp - 0x84], 7
mov dword [ebp - 0x80], 0xccc3dcd3
mov dword [ebp - 0x7c], 0xbfdacfd3
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x80], al
inc ecx
mov eax, dword [ebp - 0x84]
cmp ecx, eax
jb 0x5ee434
mov byte [ebp + eax - 0x80], 0
mov ecx, esi
lea eax, [ebp - 0x80]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x29
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e33e0]
mov eax, 0xd
mov dword [ebp - 0x8c], eax
xor ecx, ecx
movups xmmword [ebp - 0x88], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5ee491
lea ecx, [ebp - 0x88]
mov byte [ebp + eax - 0x88], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ee4d0
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x2b
cmp dword [edi + 4], 0
jne 0x5ee507
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ee51e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x2c
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x2d
mov eax, 0xd
movaps xmm0, xmmword [0x7e33e0]
xor ecx, ecx
mov dword [ebp - 0xb4], eax
movups xmmword [ebp - 0xb0], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb0], al
inc ecx
mov eax, dword [ebp - 0xb4]
cmp ecx, eax
jb 0x5ee555
mov byte [ebp + eax - 0xb0], 0
mov ecx, esi
lea eax, [ebp - 0xb0]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x2c
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e32d0]
mov eax, 0xc
mov dword [ebp - 0x8c], eax
xor ecx, ecx
movups xmmword [ebp - 0x88], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5ee5c0
lea ecx, [ebp - 0x88]
mov byte [ebp + eax - 0x88], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ee600
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x2e
cmp dword [edi + 4], 0
jne 0x5ee637
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ee64e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x30
mov eax, 0xc
movaps xmm0, xmmword [0x7e32d0]
xor ecx, ecx
mov dword [ebp - 0xb4], eax
movups xmmword [ebp - 0xb0], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb0], al
inc ecx
mov eax, dword [ebp - 0xb4]
cmp ecx, eax
jb 0x5ee685
mov byte [ebp + eax - 0xb0], 0
mov ecx, esi
lea eax, [ebp - 0xb0]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x2f
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
mov dword [ebp - 0x88], 0xb
xor ecx, ecx
mov dword [ebp - 0x84], 0xe4cddcd6
mov dword [ebp - 0x80], 0xe0dcdcc8
mov dword [ebp - 0x7c], 0xc3aeb3b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x84], al
inc ecx
mov eax, dword [ebp - 0x88]
cmp ecx, eax
jb 0x5ee6f4
lea ecx, [ebp - 0x84]
mov byte [ebp + eax - 0x84], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ee730
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x31
cmp dword [edi + 4], 0
jne 0x5ee767
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ee77e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x33
xor ecx, ecx
mov dword [ebp - 0xb0], 0xb
mov dword [ebp - 0xac], 0xe4cddcd6
mov dword [ebp - 0xa8], 0xe0dcdcc8
mov dword [ebp - 0xa4], 0xc3aeb3b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xac], al
inc ecx
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
jb 0x5ee7c4
mov byte [ebp + eax - 0xac], 0
mov ecx, esi
lea eax, [ebp - 0xac]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x32
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e3e60]
xor ecx, ecx
mov dword [ebp - 0x8c], 0xf
movups xmmword [ebp - 0x88], xmm0
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5ee830
lea ecx, [ebp - 0x88]
mov byte [ebp + eax - 0x88], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ee870
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x34
cmp dword [edi + 4], 0
jne 0x5ee8a7
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ee8be
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x36
xor ecx, ecx
movaps xmm0, xmmword [0x7e3e60]
mov dword [ebp - 0xb4], 0xf
movups xmmword [ebp - 0xb0], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb0], al
inc ecx
mov eax, dword [ebp - 0xb4]
cmp ecx, eax
jb 0x5ee8f4
mov byte [ebp + eax - 0xb0], 0
mov ecx, esi
lea eax, [ebp - 0xb0]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x35
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e3590]
mov eax, 0xe
mov dword [ebp - 0x8c], eax
xor ecx, ecx
movups xmmword [ebp - 0x88], xmm0
nop word [eax + eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x88], al
inc ecx
mov eax, dword [ebp - 0x8c]
cmp ecx, eax
jb 0x5ee960
lea ecx, [ebp - 0x88]
mov byte [ebp + eax - 0x88], 0
mov dword [ebp - 0x30], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ee9a0
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
lea ecx, [ebp - 0x40]
call fcn.00407ab0
mov byte [ebp - 4], 0x37
sub esp, 0x18
cmp dword [edi + 4], 0
mov dword [ebp - 0xd8], esp
mov dword [ebp - 0xa0], esp
jne 0x5ee9e9
mov dword [ebp - 0x18], 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
jmp 0x5eea0b
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.00647960
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
lea ecx, [ebp - 0x28]
mov esi, eax
call fcn.00407a10
mov ecx, dword [ebp - 0xa0]
push esi
call fcn.00770d70
mov byte [ebp - 4], 0x38
mov eax, 0xe
movaps xmm0, xmmword [0x7e3590]
xor ecx, ecx
mov dword [ebp - 0xb4], eax
movups xmmword [ebp - 0xb0], xmm0
nop word [eax + eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb0], al
inc ecx
mov eax, dword [ebp - 0xb4]
cmp ecx, eax
jb 0x5eea50
mov ecx, dword [ebp - 0xd4]
mov byte [ebp + eax - 0xb0], 0
lea eax, [ebp - 0xb0]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x37
call fcn.007712b0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e3d70]
xor ecx, ecx
mov eax, 0x14
mov dword [ebp - 0x80], 0xaea9a8a4
mov dword [ebp - 0x94], eax
movups xmmword [ebp - 0x90], xmm0
mov byte [ebp - 0x7c], 0xcc
mov word [ebp - 0x7b], cx
mov byte [ebp - 0x79], cl
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x90], al
inc ecx
mov eax, dword [ebp - 0x94]
cmp ecx, eax
jb 0x5eeac4
lea ecx, [ebp - 0x90]
mov byte [ebp + eax - 0x90], 0
mov dword [ebp - 0x30], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5eeb00
sub ecx, edx
lea eax, [ebp - 0x90]
push ecx
push eax
lea ecx, [ebp - 0x40]
call fcn.00407ab0
mov byte [ebp - 4], 0x39
sub esp, 0x18
cmp dword [edi + 4], 0
mov dword [ebp - 0xd8], esp
mov dword [ebp - 0xa0], esp
jne 0x5eeb49
mov dword [ebp - 0x18], 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
jmp 0x5eeb6b
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.00647960
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
lea ecx, [ebp - 0x28]
mov esi, eax
call fcn.00407a10
mov ecx, dword [ebp - 0xa0]
test esi, esi
setne al
movzx eax, al
push eax
call fcn.00771150
mov byte [ebp - 4], 0x3a
xor ecx, ecx
movaps xmm0, xmmword [0x7e3d70]
mov eax, 0x14
mov dword [ebp - 0xbc], eax
movups xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0xa8], 0xaea9a8a4
mov byte [ebp - 0xa4], 0xcc
mov word [ebp - 0xa3], cx
mov byte [ebp - 0xa1], cl
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb8], al
inc ecx
mov eax, dword [ebp - 0xbc]
cmp ecx, eax
jb 0x5eebd0
mov esi, dword [ebp - 0xd4]
mov ecx, esi
mov byte [ebp + eax - 0xb8], 0
lea eax, [ebp - 0xb8]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x39
call fcn.007712b0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e3d60]
mov eax, 0x1c
movups xmmword [ebp - 0x98], xmm0
xor ecx, ecx
mov dword [ebp - 0x9c], eax
movaps xmm0, xmmword [0x7e33a0]
movups xmmword [ebp - 0x88], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x98], al
inc ecx
mov eax, dword [ebp - 0x9c]
cmp ecx, eax
jb 0x5eec42
lea ecx, [ebp - 0x98]
mov byte [ebp + eax - 0x98], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5eec80
sub ecx, edx
lea eax, [ebp - 0x98]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x3b
cmp dword [edi + 4], 0
jne 0x5eecb7
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5eecce
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x3c
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x3d
mov eax, 0x1c
movaps xmm0, xmmword [0x7e3d60]
xor ecx, ecx
movups xmmword [ebp - 0xc0], xmm0
mov dword [ebp - 0xc4], eax
movaps xmm0, xmmword [0x7e33a0]
movups xmmword [ebp - 0xb0], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xc0], al
inc ecx
mov eax, dword [ebp - 0xc4]
cmp ecx, eax
jb 0x5eed13
mov byte [ebp + eax - 0xc0], 0
mov ecx, esi
lea eax, [ebp - 0xc0]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x3c
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
movaps xmm0, xmmword [0x7e37c0]
mov eax, 0x16
mov dword [ebp - 0x94], eax
xor ecx, ecx
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0xaab8a8b8
mov dword [ebp - 0x7c], 0xcebea1
nop word [eax + eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x90], al
inc ecx
mov eax, dword [ebp - 0x94]
cmp ecx, eax
jb 0x5eed90
lea ecx, [ebp - 0x90]
mov byte [ebp + eax - 0x90], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5eedd0
sub ecx, edx
lea eax, [ebp - 0x90]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x3e
cmp dword [edi + 4], 0
jne 0x5eee07
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5eee1e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x40
mov eax, 0x16
movaps xmm0, xmmword [0x7e37c0]
xor ecx, ecx
mov dword [ebp - 0xbc], eax
movups xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0xa8], 0xaab8a8b8
mov dword [ebp - 0xa4], 0xcebea1
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb8], al
inc ecx
mov eax, dword [ebp - 0xbc]
cmp ecx, eax
jb 0x5eee70
mov byte [ebp + eax - 0xb8], 0
mov ecx, esi
lea eax, [ebp - 0xb8]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x3f
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
mov eax, 0xa
mov dword [ebp - 0x84], 0xc9d5d1cb
mov dword [ebp - 0x88], eax
xor ecx, ecx
mov dword [ebp - 0x80], 0xded0e2c8
mov dword [ebp - 0x7c], 0xc2a4ad
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x84], al
inc ecx
mov eax, dword [ebp - 0x88]
cmp ecx, eax
jb 0x5eeee0
lea ecx, [ebp - 0x84]
mov byte [ebp + eax - 0x84], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5eef20
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x41
cmp dword [edi + 4], 0
jne 0x5eef57
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5eef6e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x42
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x43
mov eax, 0xa
mov dword [ebp - 0xb0], eax
xor ecx, ecx
mov dword [ebp - 0xac], 0xc9d5d1cb
mov dword [ebp - 0xa8], 0xded0e2c8
mov dword [ebp - 0xa4], 0xc2a4ad
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xac], al
inc ecx
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
jb 0x5eefb5
mov byte [ebp + eax - 0xac], 0
mov ecx, esi
lea eax, [ebp - 0xac]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x42
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
mov dword [ebp - 0x88], 0xb
xor ecx, ecx
mov dword [ebp - 0x84], 0xdcddcccb
mov dword [ebp - 0x80], 0xe0caced9
mov dword [ebp - 0x7c], 0xc3aeb3b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x84], al
inc ecx
mov eax, dword [ebp - 0x88]
cmp ecx, eax
jb 0x5ef024
lea ecx, [ebp - 0x84]
mov byte [ebp + eax - 0x84], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ef060
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x44
cmp dword [edi + 4], 0
jne 0x5ef097
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ef0ae
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x45
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x46
xor ecx, ecx
movaps xmm0, xmmword [0x7e3e70]
mov dword [ebp - 0xb4], 0xf
movups xmmword [ebp - 0xb0], xmm0
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xb0], al
inc ecx
mov eax, dword [ebp - 0xb4]
cmp ecx, eax
jb 0x5ef0e4
mov byte [ebp + eax - 0xb0], 0
mov ecx, esi
lea eax, [ebp - 0xb0]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x45
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xa0], esp
push 0x7d5458
call fcn.00770df0
mov byte [ebp - 4], 0x47
xor ecx, ecx
movaps xmm0, xmmword [0x7e3790]
mov dword [ebp - 0x48], 0x1b
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x34], 0xbfb9a6b8
mov dword [ebp - 0x30], 0xbdafbd93
mov dword [ebp - 0x2c], 0xd3a1bcb1
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x44], al
inc ecx
mov eax, dword [ebp - 0x48]
cmp ecx, eax
jb 0x5ef171
mov byte [ebp + eax - 0x44], 0
mov ecx, esi
lea eax, [ebp - 0x44]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.007712b0
mov eax, 9
mov dword [ebp - 0x84], 0xd8d4c0cb
mov dword [ebp - 0x88], eax
xor ecx, ecx
mov dword [ebp - 0x80], 0xd6cbdae3
mov dword [ebp - 0x7c], 0xc1a4
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x84], al
inc ecx
mov eax, dword [ebp - 0x88]
cmp ecx, eax
jb 0x5ef1c1
lea ecx, [ebp - 0x84]
mov byte [ebp + eax - 0x84], 0
mov dword [ebp - 0x18], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ef200
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.00407ab0
mov byte [ebp - 4], 0x48
cmp dword [edi + 4], 0
jne 0x5ef237
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ef24e
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x49
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
mov byte [ebp - 4], 0x4a
xor ecx, ecx
mov dword [ebp - 0xb0], 0xb
mov dword [ebp - 0xac], 0xd8d4c0cb
mov dword [ebp - 0xa8], 0xd8e1d9d9
mov dword [ebp - 0xa4], 0xc3a6a8b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xac], al
inc ecx
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
jb 0x5ef294
mov byte [ebp + eax - 0xac], 0
mov ecx, esi
lea eax, [ebp - 0xac]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x49
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
push 3
push 0x7d8664
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00407ab0
mov byte [ebp - 4], 0x4b
cmp dword [edi + 4], 0
jne 0x5ef31e
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
jmp 0x5ef335
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.00647960
sub esp, 0x18
mov byte [ebp - 4], 0x4c
lea eax, [ebp - 0x40]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770c70
push 0x7d8664
mov ecx, esi
mov byte [ebp - 4], 0x4d
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x4c
call fcn.007712b0
lea ecx, [ebp - 0x40]
call fcn.00407a10
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
call fcn.00407a10
mov dword [ebp - 0x88], 0xb
xor ecx, ecx
mov dword [ebp - 0x84], 0xdcdbcacd
mov dword [ebp - 0x80], 0xd0dde2d9
mov dword [ebp - 0x7c], 0xc3b6afb5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x84], al
inc ecx
mov eax, dword [ebp - 0x88]
cmp ecx, eax
jb 0x5ef3a0
lea ecx, [ebp - 0x84]
mov byte [ebp + eax - 0x84], 0
mov dword [ebp - 0x30], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ef3e0
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x40]
call fcn.00407ab0
mov byte [ebp - 4], 0x4e
sub esp, 0x18
cmp dword [edi + 4], 0
mov dword [ebp - 0xd8], esp
mov dword [ebp - 0xa0], esp
jne 0x5ef429
mov dword [ebp - 0x18], 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
jmp 0x5ef44b
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.006478f0
push eax
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.00647960
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
lea ecx, [ebp - 0x28]
mov esi, eax
call fcn.00407a10
mov ecx, dword [ebp - 0xa0]
push esi
call fcn.00770d70
mov byte [ebp - 4], 0x4f
xor ecx, ecx
mov dword [ebp - 0xb0], 0xb
mov dword [ebp - 0xac], 0xdcdbcacd
mov dword [ebp - 0xa8], 0xd0dde2d9
mov dword [ebp - 0xa4], 0xc3b6afb5
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xac], al
inc ecx
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
jb 0x5ef4a0
mov edi, dword [ebp - 0xd4]
mov ecx, edi
mov byte [ebp + eax - 0xac], 0
lea eax, [ebp - 0xac]
push eax
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 0x4e
call fcn.007712b0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 8
call fcn.00407a10
mov eax, 9
mov dword [ebp - 0xac], 0xdfd4d8c1
mov dword [ebp - 0xb0], eax
xor ecx, ecx
mov dword [ebp - 0xa8], 0xcd90c5d9
mov dword [ebp - 0xa4], 0xc1b5
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0xac], al
inc ecx
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
jb 0x5ef514
mov byte [ebp + eax - 0xac], 0
xor ecx, ecx
mov dword [ebp - 0x84], 7
mov dword [ebp - 0x80], 0xccc3dcd3
mov dword [ebp - 0x7c], 0xbfdacfd3
nop dword [eax]
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x80], al
inc ecx
mov eax, dword [ebp - 0x84]
cmp ecx, eax
jb 0x5ef550
mov byte [ebp + eax - 0x80], 0
mov ecx, edi
lea eax, [ebp - 0x80]
push eax
call fcn.00771500
lea ecx, [ebp - 0x40]
push ecx
mov ecx, eax
call fcn.00772100
lea ecx, [ebp - 0xac]
mov edx, eax
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5ef590
mov eax, dword [edx + 0x10]
sub ecx, esi
cmp dword [edx + 0x14], 0x10
jb 0x5ef5a4
mov edx, dword [edx]
push ecx
lea ecx, [ebp - 0xac]
push ecx
push eax
push edx
call fcn.0040ffd0
add esp, 0x10
mov byte [ebp - 0xc5], al
lea ecx, [ebp - 0x40]
call fcn.00407a10
cmp byte [ebp - 0xc5], 0
je 0x5ef6e6
movaps xmm0, xmmword [0x7e4020]
xor ecx, ecx
movups xmmword [ebp - 0x148], xmm0
mov eax, 0x54
mov dword [ebp - 0xf8], 0x6c647926
movaps xmm0, xmmword [0x7e3b50]
movups xmmword [ebp - 0x138], xmm0
mov dword [ebp - 0x14c], eax
movaps xmm0, xmmword [0x7e3740]
movups xmmword [ebp - 0x128], xmm0
mov byte [ebp - 0xf4], 0xc
movaps xmm0, xmmword [0x7e3770]
movups xmmword [ebp - 0x118], xmm0
mov word [ebp - 0xf3], cx
movaps xmm0, xmmword [0x7e36e0]
movups xmmword [ebp - 0x108], xmm0
mov byte [ebp - 0xf1], cl
mov al, cl
sub al, 0x48
xor byte [ebp + ecx - 0x148], al
inc ecx
mov eax, dword [ebp - 0x14c]
cmp ecx, eax
jb 0x5ef642
sub esp, 0x18
mov byte [ebp + eax - 0x148], 0
lea eax, [ebp - 0x148]
mov dword [ebp - 0xa0], esp
mov ecx, esp
push eax
call fcn.00770df0
mov byte [ebp - 4], 0x50
xor ecx, ecx
mov eax, 8
mov dword [ebp - 0x84], 0xd4ddd6d4
mov dword [ebp - 0x88], eax
xor edx, edx
mov dword [ebp - 0x80], 0xd3ccc8e3
mov byte [ebp - 0x7c], 0xc0
mov word [ebp - 0x7b], cx
mov byte [ebp - 0x79], cl
nop word [eax + eax]
mov al, dl
sub al, 0x48
xor byte [ebp + edx - 0x84], al
inc edx
mov eax, dword [ebp - 0x88]
cmp edx, eax
jb 0x5ef6b0
mov byte [ebp + eax - 0x84], cl
lea eax, [ebp - 0x84]
push eax
mov ecx, edi
call fcn.00771500
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.007712b0
lea ecx, [ebp - 0x60]
call fcn.00404220
lea ecx, [ebp - 0x78]
call fcn.007711e0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0076d59e
mov esp, ebp
pop ebp
ret