Function at 0x40f440
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Parse pe header

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c02e4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x398
push esi
push edi
mov dword [ebp - 4], 1
lea ecx, [ebx + 8]
cmp dword [ebx + 0x1c], 8
cmovae ecx, dword [ebx + 8]
sub esp, 8
call fcn.004a1f30
sub esp, 0x10
mov dword [ebp - 0x3c], eax
mov ecx, esp
mov dword [ebp - 0x18], esp
xor eax, eax
push 2
push 0x4cf390
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.0041aa10
sub esp, 0x18
mov byte [ebp - 4], 2
lea eax, [ebx + 0x20]
mov ecx, esp
push eax
call fcn.0041a8c0
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 1
call fcn.0040f110
add esp, 0x30
mov byte [ebp - 4], 3
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x50]
xor edi, edi
mov esi, dword [ebp - 0x54]
sub ecx, esi
imul ecx
mov dword [ebp - 0x154], edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x41271a
lea eax, [edi + edi*2]
shl eax, 3
cmp dword [esi + eax + 0x14], 8
mov dword [ebp - 0x1c], eax
lea edx, [esi + eax]
mov edi, edx
jb 0x40f51b
mov edi, dword [edx]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x14], eax
cmp eax, 1
jne 0x40f549
mov ecx, 0x4cf398
mov esi, eax
sub edi, ecx
nop
mov ax, word [ecx + edi]
cmp ax, word [ecx]
jne 0x40f546
add ecx, 2
sub esi, 1
jne 0x40f530
jmp 0x4126ec
mov eax, dword [ebp - 0x14]
cmp dword [edx + 0x14], 8
jb 0x40f551
mov edx, dword [edx]
cmp eax, 2
jne 0x40f575
mov ecx, 0x4cf39c
mov esi, eax
sub edx, ecx
nop
mov ax, word [ecx + edx]
cmp ax, word [ecx]
jne 0x40f575
add ecx, 2
sub esi, 1
jne 0x40f560
mov al, 1
jmp 0x40f577
xor al, al
test al, al
jne 0x4126ec
push 0x4cf3a4
lea edx, [ebx + 0x20]
lea ecx, [ebp - 0x6c]
call fcn.0041ae90
add esp, 4
mov esi, dword [ebp - 0x1c]
mov edx, eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x54]
add ecx, esi
push ecx
lea ecx, [ebp - 0x34]
call fcn.0041ade0
add esp, 4
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x58]
cmp edx, 8
jb 0x40f5ea
mov ecx, dword [ebp - 0x6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f5e0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x5c], 0
cmp dword [ebp - 0x20], 8
lea ecx, [ebp - 0x34]
mov word [ebp - 0x6c], ax
cmovae ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x54]
add eax, esi
mov dword [ebp - 0x58], 7
cmp dword [eax + 0x14], 8
jb 0x40f616
mov eax, dword [eax]
mov edx, dword [ebp - 0x3c]
test edx, edx
jne 0x40f624
mov eax, 0x10000
jmp 0x40f63e
cmp dword [edx], 2
je 0x40f630
mov eax, 0x80000
jmp 0x40f63e
push 2
push 0
push ecx
mov ecx, dword [edx + 4]
push eax
call fcn.004a13d0
sub esp, 0x18
mov dword [0x4dc670], eax
mov ecx, esp
mov dword [ebp - 0x18], esp
xor eax, eax
push 2
push 0x4cf390
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.0041aa10
sub esp, 0x18
mov byte [ebp - 4], 7
lea eax, [ebp - 0x34]
mov ecx, esp
push eax
call fcn.0041a8c0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 6
call fcn.0040f110
add esp, 0x30
mov byte [ebp - 4], 8
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x7c]
xor edi, edi
mov esi, dword [ebp - 0x80]
sub ecx, esi
imul ecx
mov dword [ebp - 0x150], edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4126d8
nop word [eax + eax]
lea eax, [edi + edi*2]
shl eax, 3
cmp dword [esi + eax + 0x14], 8
mov dword [ebp - 0x38], eax
lea edx, [esi + eax]
mov edi, edx
jb 0x40f6d7
mov edi, dword [edx]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x14], eax
cmp eax, 1
jne 0x40f709
mov ecx, 0x4cf398
mov esi, eax
sub edi, ecx
nop dword [eax + eax]
mov ax, word [ecx + edi]
cmp ax, word [ecx]
jne 0x40f706
add ecx, 2
sub esi, 1
jne 0x40f6f0
jmp 0x4126aa
mov eax, dword [ebp - 0x14]
cmp dword [edx + 0x14], 8
jb 0x40f711
mov edx, dword [edx]
cmp eax, 2
jne 0x40f735
mov ecx, 0x4cf39c
mov esi, eax
sub edx, ecx
nop
mov ax, word [edx + ecx]
cmp ax, word [ecx]
jne 0x40f735
add ecx, 2
sub esi, 1
jne 0x40f720
mov al, 1
jmp 0x40f737
xor al, al
test al, al
jne 0x4126aa
mov edx, dword [ebp - 0x54]
lea ecx, [ebp - 0x6c]
mov edi, dword [ebp - 0x1c]
push 0x4cf3a4
lea edx, [edx + edi]
call fcn.0041ae90
add esp, 4
mov esi, dword [ebp - 0x38]
mov edx, eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x80]
add ecx, esi
push ecx
lea ecx, [ebp - 0x330]
call fcn.0041ade0
add esp, 4
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x58]
cmp edx, 8
jb 0x40f7b3
mov ecx, dword [ebp - 0x6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f7a9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x5c], 0
push 0x4cf3a4
lea edx, [ebx + 0x20]
mov dword [ebp - 0x58], 7
lea ecx, [ebp - 0x300]
mov word [ebp - 0x6c], ax
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0xc
mov edx, eax
mov ecx, dword [ebp - 0x54]
add ecx, edi
push ecx
lea ecx, [ebp - 0xd4]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xb0]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0xe
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, esi
push ecx
lea ecx, [ebp - 0x98]
call fcn.0041ade0
mov esi, eax
add esp, 4
lea eax, [ebp - 0x34]
cmp eax, esi
je 0x40f89f
mov edx, dword [ebp - 0x20]
cmp edx, 8
jb 0x40f86d
mov ecx, dword [ebp - 0x34]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f863
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
mov dword [ebp - 0x24], 0
xor eax, eax
mov dword [ebp - 0x20], 7
mov word [ebp - 0x34], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x34], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x24], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x84]
cmp edx, 8
jb 0x40f8df
mov ecx, dword [ebp - 0x98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f8d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 7
mov word [ebp - 0x98], ax
cmp edx, 8
jb 0x40f940
mov ecx, dword [ebp - 0xb0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f936
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 7
mov word [ebp - 0xb0], ax
cmp edx, 8
jb 0x40f9a1
mov ecx, dword [ebp - 0xd4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f997
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x2ec]
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 7
mov word [ebp - 0xd4], ax
cmp edx, 8
jb 0x40fa02
mov ecx, dword [ebp - 0x300]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40f9f8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
lea ecx, [ebp - 0x330]
cmovae eax, dword [ebp - 0x34]
cmp dword [ebp - 0x31c], 8
cmovae ecx, dword [ebp - 0x330]
test edx, edx
jne 0x40fa2f
mov eax, 0x10000
jmp 0x40fa49
cmp dword [edx], 2
je 0x40fa3b
mov eax, 0x80000
jmp 0x40fa49
push 2
push 0
push eax
push ecx
mov ecx, dword [edx + 4]
call fcn.004a13d0
sub esp, 0x18
mov dword [0x4dc670], eax
mov ecx, esp
mov dword [ebp - 0x18], esp
xor eax, eax
push 2
push 0x4cf390
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.0041aa10
sub esp, 0x18
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x34]
mov ecx, esp
push eax
call fcn.0041a8c0
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0xb
call fcn.0040f110
add esp, 0x30
mov byte [ebp - 4], 0x10
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0xb8]
xor edi, edi
mov esi, dword [ebp - 0xbc]
sub ecx, esi
imul ecx
mov dword [ebp - 0x14c], edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x412690
nop word [eax + eax]
lea eax, [edi + edi*2]
shl eax, 3
cmp dword [eax + esi + 0x14], 8
mov dword [ebp - 0x40], eax
lea edx, [eax + esi]
mov edi, edx
jb 0x40fae7
mov edi, dword [edx]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x14], eax
cmp eax, 1
jne 0x40fb19
mov ecx, 0x4cf398
mov esi, eax
sub edi, ecx
nop dword [eax + eax]
mov ax, word [edi + ecx]
cmp ax, word [ecx]
jne 0x40fb16
add ecx, 2
sub esi, 1
jne 0x40fb00
jmp 0x41265c
mov eax, dword [ebp - 0x14]
cmp dword [edx + 0x14], 8
jb 0x40fb21
mov edx, dword [edx]
cmp eax, 2
jne 0x40fb45
mov ecx, 0x4cf39c
mov esi, eax
sub edx, ecx
nop
mov ax, word [edx + ecx]
cmp ax, word [ecx]
jne 0x40fb45
add ecx, 2
sub esi, 1
jne 0x40fb30
mov al, 1
jmp 0x40fb47
xor al, al
test al, al
jne 0x41265c
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
push 0x4cf3a8
lea edx, [edx + ecx]
lea ecx, [ebp - 0x98]
call fcn.0041ae90
add esp, 4
mov edi, dword [ebp - 0x38]
mov edx, eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x80]
add ecx, edi
push ecx
lea ecx, [ebp - 0xb0]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xd4]
call fcn.00405d20
add esp, 4
mov esi, dword [ebp - 0x40]
mov edx, eax
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0xbc]
add ecx, esi
push ecx
lea ecx, [ebp - 0x300]
call fcn.0041ade0
add esp, 4
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0xc0]
cmp edx, 8
jb 0x40fc05
mov ecx, dword [ebp - 0xd4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40fbfb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 7
mov word [ebp - 0xd4], ax
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x9c]
cmp edx, 8
jb 0x40fc66
mov ecx, dword [ebp - 0xb0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40fc5c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 7
mov word [ebp - 0xb0], ax
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x84]
cmp edx, 8
jb 0x40fcc7
mov ecx, dword [ebp - 0x98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40fcbd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x88], 0
push 0x4cf3a4
lea edx, [ebx + 0x20]
mov dword [ebp - 0x84], 7
lea ecx, [ebp - 0x2e8]
mov word [ebp - 0x98], ax
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0x18
mov edx, eax
mov ecx, dword [ebp - 0x54]
add ecx, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x144]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x12c]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x1a
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, edi
push ecx
lea ecx, [ebp - 0xfc]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x114]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x1c
mov edx, eax
mov ecx, dword [ebp - 0xbc]
add ecx, esi
push ecx
lea ecx, [ebp - 0x6c]
call fcn.0041ade0
mov esi, eax
add esp, 4
lea eax, [ebp - 0x34]
cmp eax, esi
je 0x40fdf0
mov edx, dword [ebp - 0x20]
cmp edx, 8
jb 0x40fdbe
mov ecx, dword [ebp - 0x34]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40fdb4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
mov dword [ebp - 0x24], 0
xor eax, eax
mov dword [ebp - 0x20], 7
mov word [ebp - 0x34], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x34], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x24], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x58]
cmp edx, 8
jb 0x40fe2a
mov ecx, dword [ebp - 0x6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40fe20
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x100]
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 7
mov word [ebp - 0x6c], ax
cmp edx, 8
jb 0x40fe82
mov ecx, dword [ebp - 0x114]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40fe78
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0xe8]
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 7
mov word [ebp - 0x114], ax
cmp edx, 8
jb 0x40fee3
mov ecx, dword [ebp - 0xfc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40fed9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x118]
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 7
mov word [ebp - 0xfc], ax
cmp edx, 8
jb 0x40ff44
mov ecx, dword [ebp - 0x12c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40ff3a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x130]
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 7
mov word [ebp - 0x12c], ax
cmp edx, 8
jb 0x40ffa5
mov ecx, dword [ebp - 0x144]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40ff9b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x2d4]
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 7
mov word [ebp - 0x144], ax
cmp edx, 8
jb 0x410006
mov ecx, dword [ebp - 0x2e8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40fffc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
lea ecx, [ebp - 0x300]
cmovae eax, dword [ebp - 0x34]
cmp dword [ebp - 0x2ec], 8
cmovae ecx, dword [ebp - 0x300]
test edx, edx
jne 0x410033
mov eax, 0x10000
jmp 0x41004d
cmp dword [edx], 2
je 0x41003f
mov eax, 0x80000
jmp 0x41004d
push 2
push 0
push eax
push ecx
mov ecx, dword [edx + 4]
call fcn.004a13d0
sub esp, 0x18
mov dword [0x4dc670], eax
mov ecx, esp
mov dword [ebp - 0x18], esp
xor eax, eax
push 2
push 0x4cf390
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.0041aa10
sub esp, 0x18
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x34]
mov ecx, esp
push eax
call fcn.0041a8c0
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x17
call fcn.0040f110
add esp, 0x30
mov byte [ebp - 4], 0x1e
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0xe0]
xor edi, edi
mov esi, dword [ebp - 0xe4]
sub ecx, esi
imul ecx
mov dword [ebp - 0x148], edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x412642
nop
lea eax, [edi + edi*2]
shl eax, 3
cmp dword [esi + eax + 0x14], 8
mov dword [ebp - 0x70], eax
lea edx, [esi + eax]
mov edi, edx
jb 0x4100e7
mov edi, dword [edx]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x14], eax
cmp eax, 1
jne 0x410119
mov ecx, 0x4cf398
mov esi, eax
sub edi, ecx
nop dword [eax + eax]
mov ax, word [ecx + edi]
cmp ax, word [ecx]
jne 0x410116
add ecx, 2
sub esi, 1
jne 0x410100
jmp 0x41260e
mov eax, dword [ebp - 0x14]
cmp dword [edx + 0x14], 8
jb 0x410121
mov edx, dword [edx]
cmp eax, 2
jne 0x410145
mov ecx, 0x4cf39c
mov esi, eax
sub edx, ecx
nop
mov ax, word [ecx + edx]
cmp ax, word [ecx]
jne 0x410145
add ecx, 2
sub esi, 1
jne 0x410130
mov al, 1
jmp 0x410147
xor al, al
test al, al
jne 0x41260e
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
push 0x4cf3a8
lea edx, [edx + ecx]
lea ecx, [ebp - 0xd4]
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0x1f
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x114]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xfc]
call fcn.00405d20
add esp, 4
mov edi, dword [ebp - 0x40]
mov edx, eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0xbc]
add ecx, edi
push ecx
lea ecx, [ebp - 0x12c]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x144]
call fcn.00405d20
add esp, 4
mov esi, dword [ebp - 0x70]
mov edx, eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0xe4]
add ecx, esi
push ecx
lea ecx, [ebp - 0x2e8]
call fcn.0041ade0
add esp, 4
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x130]
cmp edx, 8
jb 0x41023c
mov ecx, dword [ebp - 0x144]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410232
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 7
mov word [ebp - 0x144], ax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x118]
cmp edx, 8
jb 0x41029d
mov ecx, dword [ebp - 0x12c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410293
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 7
mov word [ebp - 0x12c], ax
mov byte [ebp - 4], 0x27
mov edx, dword [ebp - 0xe8]
cmp edx, 8
jb 0x4102fe
mov ecx, dword [ebp - 0xfc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4102f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 7
mov word [ebp - 0xfc], ax
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0x100]
cmp edx, 8
jb 0x41035f
mov ecx, dword [ebp - 0x114]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410355
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 7
mov word [ebp - 0x114], ax
mov byte [ebp - 4], 0x29
mov edx, dword [ebp - 0xc0]
cmp edx, 8
jb 0x4103c0
mov ecx, dword [ebp - 0xd4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4103b6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0xc4], 0
push 0x4cf3a4
lea edx, [ebx + 0x20]
mov dword [ebp - 0xc0], 7
lea ecx, [ebp - 0x2d0]
mov word [ebp - 0xd4], ax
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0x2a
mov edx, eax
mov ecx, dword [ebp - 0x54]
add ecx, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x1d4]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x1bc]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x2c
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x1a4]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x18c]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x2e
mov edx, eax
mov ecx, dword [ebp - 0xbc]
add ecx, edi
push ecx
lea ecx, [ebp - 0x6c]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x98]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x30
mov edx, eax
mov ecx, dword [ebp - 0xe4]
add ecx, esi
push ecx
lea ecx, [ebp - 0xb0]
call fcn.0041ade0
mov esi, eax
add esp, 4
lea eax, [ebp - 0x34]
cmp eax, esi
je 0x410520
mov edx, dword [ebp - 0x20]
cmp edx, 8
jb 0x4104ee
mov ecx, dword [ebp - 0x34]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4104e4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
mov dword [ebp - 0x24], 0
xor eax, eax
mov dword [ebp - 0x20], 7
mov word [ebp - 0x34], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x34], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x24], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x9c]
cmp edx, 8
jb 0x410560
mov ecx, dword [ebp - 0xb0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410556
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x2f
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 7
mov word [ebp - 0xb0], ax
cmp edx, 8
jb 0x4105c1
mov ecx, dword [ebp - 0x98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4105b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x2e
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 7
mov word [ebp - 0x98], ax
cmp edx, 8
jb 0x41061c
mov ecx, dword [ebp - 0x6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410612
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x2d
mov edx, dword [ebp - 0x178]
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 7
mov word [ebp - 0x6c], ax
cmp edx, 8
jb 0x410674
mov ecx, dword [ebp - 0x18c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41066a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x2c
mov edx, dword [ebp - 0x190]
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x178], 7
mov word [ebp - 0x18c], ax
cmp edx, 8
jb 0x4106d5
mov ecx, dword [ebp - 0x1a4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4106cb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x2b
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 7
mov word [ebp - 0x1a4], ax
cmp edx, 8
jb 0x410736
mov ecx, dword [ebp - 0x1bc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41072c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x2a
mov edx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 7
mov word [ebp - 0x1bc], ax
cmp edx, 8
jb 0x410797
mov ecx, dword [ebp - 0x1d4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41078d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x29
mov edx, dword [ebp - 0x2bc]
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 7
mov word [ebp - 0x1d4], ax
cmp edx, 8
jb 0x4107f8
mov ecx, dword [ebp - 0x2d0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4107ee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
lea ecx, [ebp - 0x2e8]
cmovae eax, dword [ebp - 0x34]
cmp dword [ebp - 0x2d4], 8
cmovae ecx, dword [ebp - 0x2e8]
test edx, edx
jne 0x410825
mov eax, 0x10000
jmp 0x41083f
cmp dword [edx], 2
je 0x410831
mov eax, 0x80000
jmp 0x41083f
push 2
push 0
push eax
push ecx
mov ecx, dword [edx + 4]
call fcn.004a13d0
sub esp, 0x18
mov dword [0x4dc670], eax
mov ecx, esp
mov dword [ebp - 0x18], esp
xor eax, eax
push 2
push 0x4cf390
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.0041aa10
sub esp, 0x18
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x34]
mov ecx, esp
push eax
call fcn.0041a8c0
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x29
call fcn.0040f110
add esp, 0x30
mov byte [ebp - 4], 0x32
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x15c]
xor esi, esi
mov edi, dword [ebp - 0x160]
sub ecx, edi
imul ecx
mov dword [ebp - 0x168], esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4125f4
lea eax, [esi + esi*2]
shl eax, 3
mov dword [ebp - 0x164], eax
add eax, edi
mov esi, eax
cmp dword [eax + 0x14], 8
jb 0x4108d8
mov esi, dword [eax]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x14], ecx
cmp ecx, 1
jne 0x41090a
mov edx, 0x4cf398
mov dword [ebp - 0x48], ecx
sub esi, edx
nop dword [eax]
mov cx, word [esi + edx]
cmp cx, word [edx]
jne 0x410907
add edx, 2
sub dword [ebp - 0x48], 1
jne 0x4108f0
jmp 0x4125c6
mov ecx, dword [ebp - 0x14]
cmp dword [eax + 0x14], 8
jb 0x410912
mov eax, dword [eax]
cmp ecx, 2
jne 0x410935
mov edx, 0x4cf39c
mov esi, ecx
sub eax, edx
mov cx, word [eax + edx]
cmp cx, word [edx]
jne 0x410935
add edx, 2
sub esi, 1
jne 0x410920
mov al, 1
jmp 0x410937
xor al, al
test al, al
jne 0x4125c6
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
push 0x4cf3a8
lea edx, [edx + ecx]
lea ecx, [ebp - 0xfc]
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0x33
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x12c]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x144]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x35
mov edx, eax
mov ecx, dword [ebp - 0xbc]
add ecx, dword [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x18c]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x1a4]
call fcn.00405d20
add esp, 4
mov edi, dword [ebp - 0x70]
mov edx, eax
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0xe4]
add ecx, edi
push ecx
lea ecx, [ebp - 0x1bc]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x1d4]
call fcn.00405d20
add esp, 4
mov esi, dword [ebp - 0x164]
mov edx, eax
mov byte [ebp - 4], 0x39
mov ecx, dword [ebp - 0x160]
add ecx, esi
push ecx
lea ecx, [ebp - 0x2d0]
call fcn.0041ade0
add esp, 4
mov byte [ebp - 4], 0x3b
mov edx, dword [ebp - 0x1c0]
cmp edx, 8
jb 0x410a66
mov ecx, dword [ebp - 0x1d4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410a5c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 7
mov word [ebp - 0x1d4], ax
mov byte [ebp - 4], 0x3c
mov edx, dword [ebp - 0x1a8]
cmp edx, 8
jb 0x410ac7
mov ecx, dword [ebp - 0x1bc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410abd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 7
mov word [ebp - 0x1bc], ax
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0x190]
cmp edx, 8
jb 0x410b28
mov ecx, dword [ebp - 0x1a4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410b1e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 7
mov word [ebp - 0x1a4], ax
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x178]
cmp edx, 8
jb 0x410b89
mov ecx, dword [ebp - 0x18c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410b7f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x178], 7
mov word [ebp - 0x18c], ax
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x130]
cmp edx, 8
jb 0x410bea
mov ecx, dword [ebp - 0x144]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410be0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 7
mov word [ebp - 0x144], ax
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x118]
cmp edx, 8
jb 0x410c4b
mov ecx, dword [ebp - 0x12c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410c41
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 7
mov word [ebp - 0x12c], ax
mov byte [ebp - 4], 0x41
mov edx, dword [ebp - 0xe8]
cmp edx, 8
jb 0x410cac
mov ecx, dword [ebp - 0xfc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410ca2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0xec], 0
push 0x4cf3a4
lea edx, [ebx + 0x20]
mov dword [ebp - 0xe8], 7
lea ecx, [ebp - 0x2b8]
mov word [ebp - 0xfc], ax
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0x42
mov edx, eax
mov ecx, dword [ebp - 0x54]
add ecx, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x204]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x1ec]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x44
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x240]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0x228]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x46
mov edx, eax
mov ecx, dword [ebp - 0xbc]
add ecx, dword [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x6c]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x98]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x48
mov edx, eax
mov ecx, dword [ebp - 0xe4]
add ecx, edi
push ecx
lea ecx, [ebp - 0xb0]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0xd4]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x4a
mov edx, eax
mov ecx, dword [ebp - 0x160]
add ecx, esi
push ecx
lea ecx, [ebp - 0x114]
call fcn.0041ade0
mov esi, eax
add esp, 4
lea eax, [ebp - 0x34]
cmp eax, esi
je 0x410e43
mov edx, dword [ebp - 0x20]
cmp edx, 8
jb 0x410e11
mov ecx, dword [ebp - 0x34]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410e07
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
mov dword [ebp - 0x24], 0
xor eax, eax
mov dword [ebp - 0x20], 7
mov word [ebp - 0x34], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x34], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x24], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x100]
cmp edx, 8
jb 0x410e83
mov ecx, dword [ebp - 0x114]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410e79
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x49
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 7
mov word [ebp - 0x114], ax
cmp edx, 8
jb 0x410ee4
mov ecx, dword [ebp - 0xd4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410eda
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x48
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 7
mov word [ebp - 0xd4], ax
cmp edx, 8
jb 0x410f45
mov ecx, dword [ebp - 0xb0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410f3b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x47
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 7
mov word [ebp - 0xb0], ax
cmp edx, 8
jb 0x410fa6
mov ecx, dword [ebp - 0x98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410f9c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x46
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 7
mov word [ebp - 0x98], ax
cmp edx, 8
jb 0x411001
mov ecx, dword [ebp - 0x6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x410ff7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x45
mov edx, dword [ebp - 0x214]
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 7
mov word [ebp - 0x6c], ax
cmp edx, 8
jb 0x411059
mov ecx, dword [ebp - 0x228]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41104f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x44
mov edx, dword [ebp - 0x22c]
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 7
mov word [ebp - 0x228], ax
cmp edx, 8
jb 0x4110ba
mov ecx, dword [ebp - 0x240]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4110b0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x43
mov edx, dword [ebp - 0x1d8]
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 7
mov word [ebp - 0x240], ax
cmp edx, 8
jb 0x41111b
mov ecx, dword [ebp - 0x1ec]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411111
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x42
mov edx, dword [ebp - 0x1f0]
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1d8], 7
mov word [ebp - 0x1ec], ax
cmp edx, 8
jb 0x41117c
mov ecx, dword [ebp - 0x204]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411172
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x41
mov edx, dword [ebp - 0x2a4]
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 7
mov word [ebp - 0x204], ax
cmp edx, 8
jb 0x4111dd
mov ecx, dword [ebp - 0x2b8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4111d3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
lea ecx, [ebp - 0x2d0]
cmovae eax, dword [ebp - 0x34]
cmp dword [ebp - 0x2bc], 8
cmovae ecx, dword [ebp - 0x2d0]
test edx, edx
jne 0x41120a
mov eax, 0x10000
jmp 0x411224
cmp dword [edx], 2
je 0x411216
mov eax, 0x80000
jmp 0x411224
push 2
push 0
push eax
push ecx
mov ecx, dword [edx + 4]
call fcn.004a13d0
sub esp, 0x18
mov dword [0x4dc670], eax
mov ecx, esp
mov dword [ebp - 0x18], esp
xor eax, eax
push 2
push 0x4cf390
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.0041aa10
sub esp, 0x18
mov byte [ebp - 4], 0x4b
lea eax, [ebp - 0x34]
mov ecx, esp
push eax
call fcn.0041a8c0
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x41
call fcn.0040f110
add esp, 0x30
mov byte [ebp - 4], 0x4c
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x170]
xor esi, esi
mov edi, dword [ebp - 0x174]
sub ecx, edi
imul ecx
mov dword [ebp - 0x48], esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4125a6
lea eax, [esi + esi*2]
shl eax, 3
cmp dword [edi + eax + 0x14], 8
mov dword [ebp - 0x14], eax
lea ecx, [edi + eax]
mov esi, ecx
jb 0x4112b9
mov esi, dword [ecx]
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x74], eax
cmp eax, 1
jne 0x4112ea
mov edx, 0x4cf398
mov dword [ebp - 0x44], eax
sub esi, edx
nop
mov ax, word [esi + edx]
cmp ax, word [edx]
jne 0x4112e7
add edx, 2
sub dword [ebp - 0x44], 1
jne 0x4112d0
jmp 0x41257e
mov eax, dword [ebp - 0x74]
cmp dword [ecx + 0x14], 8
jb 0x4112f2
mov ecx, dword [ecx]
cmp eax, 2
jne 0x411315
mov edx, 0x4cf39c
mov esi, eax
sub ecx, edx
mov ax, word [ecx + edx]
cmp ax, word [edx]
jne 0x411315
add edx, 2
sub esi, 1
jne 0x411300
mov al, 1
jmp 0x411317
xor al, al
test al, al
jne 0x41257e
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
push 0x4cf3a8
lea edx, [edx + ecx]
lea ecx, [ebp - 0x144]
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0x4d
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x18c]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x1a4]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x4f
mov edx, eax
mov ecx, dword [ebp - 0xbc]
add ecx, dword [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x1bc]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x1d4]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x51
mov edx, eax
mov ecx, dword [ebp - 0xe4]
add ecx, dword [ebp - 0x70]
push ecx
lea ecx, [ebp - 0x228]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x52
lea ecx, [ebp - 0x240]
call fcn.00405d20
add esp, 4
mov edi, dword [ebp - 0x164]
mov edx, eax
mov byte [ebp - 4], 0x53
mov ecx, dword [ebp - 0x160]
add ecx, edi
push ecx
lea ecx, [ebp - 0x1ec]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x204]
call fcn.00405d20
add esp, 4
mov esi, dword [ebp - 0x14]
mov edx, eax
mov byte [ebp - 4], 0x55
mov ecx, dword [ebp - 0x174]
add ecx, esi
push ecx
lea ecx, [ebp - 0x2b8]
call fcn.0041ade0
add esp, 4
mov byte [ebp - 4], 0x57
mov edx, dword [ebp - 0x1f0]
cmp edx, 8
jb 0x41147d
mov ecx, dword [ebp - 0x204]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411473
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 7
mov word [ebp - 0x204], ax
mov byte [ebp - 4], 0x58
mov edx, dword [ebp - 0x1d8]
cmp edx, 8
jb 0x4114de
mov ecx, dword [ebp - 0x1ec]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4114d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1d8], 7
mov word [ebp - 0x1ec], ax
mov byte [ebp - 4], 0x59
mov edx, dword [ebp - 0x22c]
cmp edx, 8
jb 0x41153f
mov ecx, dword [ebp - 0x240]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411535
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 7
mov word [ebp - 0x240], ax
mov byte [ebp - 4], 0x5a
mov edx, dword [ebp - 0x214]
cmp edx, 8
jb 0x4115a0
mov ecx, dword [ebp - 0x228]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411596
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 7
mov word [ebp - 0x228], ax
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0x1c0]
cmp edx, 8
jb 0x411601
mov ecx, dword [ebp - 0x1d4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4115f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 7
mov word [ebp - 0x1d4], ax
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x1a8]
cmp edx, 8
jb 0x411662
mov ecx, dword [ebp - 0x1bc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411658
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 7
mov word [ebp - 0x1bc], ax
mov byte [ebp - 4], 0x5d
mov edx, dword [ebp - 0x190]
cmp edx, 8
jb 0x4116c3
mov ecx, dword [ebp - 0x1a4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4116b9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 7
mov word [ebp - 0x1a4], ax
mov byte [ebp - 4], 0x5e
mov edx, dword [ebp - 0x178]
cmp edx, 8
jb 0x411724
mov ecx, dword [ebp - 0x18c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41171a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x178], 7
mov word [ebp - 0x18c], ax
mov byte [ebp - 4], 0x5f
mov edx, dword [ebp - 0x130]
cmp edx, 8
jb 0x411785
mov ecx, dword [ebp - 0x144]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41177b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x134], 0
push 0x4cf3a4
lea edx, [ebx + 0x20]
mov dword [ebp - 0x130], 7
lea ecx, [ebp - 0x318]
mov word [ebp - 0x144], ax
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0x60
mov edx, eax
mov ecx, dword [ebp - 0x54]
add ecx, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x2a0]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x61
lea ecx, [ebp - 0x288]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x62
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x270]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0x258]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x64
mov edx, eax
mov ecx, dword [ebp - 0xbc]
add ecx, dword [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x6c]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x98]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x66
mov edx, eax
mov ecx, dword [ebp - 0xe4]
add ecx, dword [ebp - 0x70]
push ecx
lea ecx, [ebp - 0xb0]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x67
lea ecx, [ebp - 0xd4]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x68
mov edx, eax
mov ecx, dword [ebp - 0x160]
add ecx, edi
push ecx
lea ecx, [ebp - 0x114]
call fcn.0041ade0
add esp, 4
push 0x4cf3a4
mov edx, eax
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0xfc]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x6a
mov edx, eax
mov ecx, dword [ebp - 0x174]
add ecx, esi
push ecx
lea ecx, [ebp - 0x12c]
call fcn.0041ade0
mov esi, eax
add esp, 4
lea eax, [ebp - 0x34]
cmp eax, esi
je 0x411953
mov edx, dword [ebp - 0x20]
cmp edx, 8
jb 0x411921
mov ecx, dword [ebp - 0x34]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411917
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
mov dword [ebp - 0x24], 0
xor eax, eax
mov dword [ebp - 0x20], 7
mov word [ebp - 0x34], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x34], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x24], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x118]
cmp edx, 8
jb 0x411993
mov ecx, dword [ebp - 0x12c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411989
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x69
mov edx, dword [ebp - 0xe8]
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 7
mov word [ebp - 0x12c], ax
cmp edx, 8
jb 0x4119f4
mov ecx, dword [ebp - 0xfc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4119ea
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0x100]
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 7
mov word [ebp - 0xfc], ax
cmp edx, 8
jb 0x411a55
mov ecx, dword [ebp - 0x114]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411a4b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x67
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 7
mov word [ebp - 0x114], ax
cmp edx, 8
jb 0x411ab6
mov ecx, dword [ebp - 0xd4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411aac
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x66
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 7
mov word [ebp - 0xd4], ax
cmp edx, 8
jb 0x411b17
mov ecx, dword [ebp - 0xb0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411b0d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x65
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 7
mov word [ebp - 0xb0], ax
cmp edx, 8
jb 0x411b78
mov ecx, dword [ebp - 0x98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411b6e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x64
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 7
mov word [ebp - 0x98], ax
cmp edx, 8
jb 0x411bd3
mov ecx, dword [ebp - 0x6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411bc9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x63
mov edx, dword [ebp - 0x244]
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 7
mov word [ebp - 0x6c], ax
cmp edx, 8
jb 0x411c2b
mov ecx, dword [ebp - 0x258]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411c21
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x62
mov edx, dword [ebp - 0x25c]
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x244], 7
mov word [ebp - 0x258], ax
cmp edx, 8
jb 0x411c8c
mov ecx, dword [ebp - 0x270]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411c82
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x61
mov edx, dword [ebp - 0x274]
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x25c], 7
mov word [ebp - 0x270], ax
cmp edx, 8
jb 0x411ced
mov ecx, dword [ebp - 0x288]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411ce3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x60
mov edx, dword [ebp - 0x28c]
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x274], 7
mov word [ebp - 0x288], ax
cmp edx, 8
jb 0x411d4e
mov ecx, dword [ebp - 0x2a0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411d44
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x5f
mov edx, dword [ebp - 0x304]
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 7
mov word [ebp - 0x2a0], ax
cmp edx, 8
jb 0x411daf
mov ecx, dword [ebp - 0x318]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411da5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
cmp dword [ebp - 0x20], 8
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
lea ecx, [ebp - 0x2b8]
cmovae eax, dword [ebp - 0x34]
cmp dword [ebp - 0x2a4], 8
cmovae ecx, dword [ebp - 0x2b8]
test edx, edx
jne 0x411ddc
mov eax, 0x10000
jmp 0x411df6
cmp dword [edx], 2
je 0x411de8
mov eax, 0x80000
jmp 0x411df6
push 2
push 0
push eax
push ecx
mov ecx, dword [edx + 4]
call fcn.004a13d0
sub esp, 0x18
mov dword [0x4dc670], eax
mov ecx, esp
mov dword [ebp - 0x18], esp
xor eax, eax
push 2
push 0x4cf390
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.0041aa10
sub esp, 0x18
mov byte [ebp - 4], 0x6b
lea eax, [ebp - 0x34]
mov ecx, esp
push eax
call fcn.0041a8c0
lea ecx, [ebp - 0x210]
mov byte [ebp - 4], 0x5f
call fcn.0040f110
add esp, 0x30
mov byte [ebp - 4], 0x6c
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x20c]
mov edi, dword [ebp - 0x210]
sub ecx, edi
imul ecx
mov dword [ebp - 0xd8], 0
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x41255e
xor esi, esi
mov dword [ebp - 0x44], esi
nop
mov eax, dword [edi + esi + 0x14]
lea ecx, [edi + esi]
mov esi, ecx
cmp eax, 8
jb 0x411e90
mov esi, dword [ecx]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x18], edx
cmp edx, 1
jne 0x411ec2
mov dword [ebp - 0x74], edx
mov edx, 0x4cf398
sub esi, edx
mov ax, word [esi + edx]
cmp ax, word [edx]
jne 0x411ebc
add edx, 2
sub dword [ebp - 0x74], 1
jne 0x411ea5
jmp 0x41252a
mov eax, dword [ecx + 0x14]
mov edx, dword [ebp - 0x18]
cmp eax, 8
jb 0x411ec9
mov ecx, dword [ecx]
cmp edx, 2
jne 0x411eec
mov esi, edx
mov edx, 0x4cf39c
sub ecx, edx
mov ax, word [ecx + edx]
cmp ax, word [edx]
jne 0x411eec
add edx, 2
sub esi, 1
jne 0x411ed7
mov al, 1
jmp 0x411eee
xor al, al
test al, al
jne 0x41252a
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
push 0x4cf3a8
lea edx, [edx + ecx]
lea ecx, [ebp - 0x1a4]
call fcn.0041ae90
add esp, 4
mov byte [ebp - 4], 0x6d
mov edx, eax
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x1bc]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0x1d4]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x6f
mov edx, eax
mov ecx, dword [ebp - 0xbc]
add ecx, dword [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x228]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x70
lea ecx, [ebp - 0x240]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x71
mov edx, eax
mov ecx, dword [ebp - 0xe4]
add ecx, dword [ebp - 0x70]
push ecx
lea ecx, [ebp - 0x1ec]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0x204]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x73
mov edx, eax
mov ecx, dword [ebp - 0x160]
add ecx, dword [ebp - 0x164]
push ecx
lea ecx, [ebp - 0x258]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x74
lea ecx, [ebp - 0x270]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x75
mov edx, eax
mov ecx, dword [ebp - 0x174]
add ecx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x288]
call fcn.0041ade0
add esp, 4
push 0x4cf3a8
mov edx, eax
mov byte [ebp - 4], 0x76
lea ecx, [ebp - 0x2a0]
call fcn.00405d20
add esp, 4
mov byte [ebp - 4], 0x77
mov edx, eax
mov ecx, dword [ebp - 0x210]
add ecx, dword [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x318]
call fcn.0041ade0
add esp, 4
mov byte [ebp - 4], 0x79
mov edx, dword [ebp - 0x28c]
cmp edx, 8
jb 0x412087
mov ecx, dword [ebp - 0x2a0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41207d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41274d
push edx
push ecx
call fcn.004a24e6
add esp, 8
xor eax, eax
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 7
mov word [ebp - 0x2a0], ax
mov byte [ebp - 4], 0x7a
mov edx, dword [ebp - 0x274]
cmp edx, 8
jb 0x4120e8
mov ecx, dword [ebp - 0x288]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4120de
xor eax, eax
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x274], 7
mov word [ebp - 0x288], ax
mov byte [ebp - 4], 0x7b
mov edx, dword [ebp - 0x25c]
cmp edx, 8
jb 0x412149
mov ecx, dword [ebp - 0x20c]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x44]
sub ecx, edi
inc dword [ebp - 0xd8]
add esi, 0x18
imul ecx
mov dword [ebp - 0x44], esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0xd8], eax
jb 0x411e80
lea ecx, [ebp - 0x210]
call fcn.0041a7c0
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 4], 0x4c
call fcn.00405ad0
mov edi, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x170]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x48]
sub ecx, edi
imul ecx
inc esi
sar edx, 2
mov eax, edx
mov dword [ebp - 0x48], esi
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x4112a2
lea ecx, [ebp - 0x174]
call fcn.0041a7c0
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 4], 0x32
call fcn.00405ad0
mov edi, dword [ebp - 0x160]
mov ecx, dword [ebp - 0x15c]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x168]
sub ecx, edi
imul ecx
inc esi
sar edx, 2
mov eax, edx
mov dword [ebp - 0x168], esi
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x4108c0
lea ecx, [ebp - 0x160]
call fcn.0041a7c0
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 4], 0x1e
call fcn.00405ad0
mov ecx, dword [ebp - 0xe0]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xe4]
sub ecx, esi
mov edi, dword [ebp - 0x148]
imul ecx
inc edi
sar edx, 2
mov eax, edx
mov dword [ebp - 0x148], edi
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x4100d0
lea ecx, [ebp - 0xe4]
call fcn.0041a7c0
lea ecx, [ebp - 0x300]
mov byte [ebp - 4], 0x10
call fcn.00405ad0
mov ecx, dword [ebp - 0xb8]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xbc]
sub ecx, esi
mov edi, dword [ebp - 0x14c]
imul ecx
inc edi
sar edx, 2
mov eax, edx
mov dword [ebp - 0x14c], edi
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x40fad0
lea ecx, [ebp - 0xbc]
call fcn.0041a7c0
lea ecx, [ebp - 0x330]
mov byte [ebp - 4], 8
call fcn.00405ad0
mov ecx, dword [ebp - 0x7c]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x80]
sub ecx, esi
mov edi, dword [ebp - 0x150]
imul ecx
inc edi
sar edx, 2
mov eax, edx
mov dword [ebp - 0x150], edi
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x40f6c0
lea ecx, [ebp - 0x80]
call fcn.0041a7c0
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 3
call fcn.00405ad0
mov ecx, dword [ebp - 0x50]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x54]
sub ecx, esi
mov edi, dword [ebp - 0x154]
imul ecx
inc edi
sar edx, 2
mov eax, edx
mov dword [ebp - 0x154], edi
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x40f504
mov ecx, dword [ebp - 0x3c]
call fcn.004a2140
lea ecx, [ebp - 0x54]
call fcn.0041a7c0
lea ecx, [ebx + 8]
call fcn.00405ad0
lea ecx, [ebx + 0x20]
call fcn.00405ad0
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.004a9d47
int3