Function at 0x1004b4e9
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10066195
call fcn.10064c90
sub esp, 0x1d0
mov eax, dword [0x10610900]
push ebx
push esi
push edi
xor edi, edi
mov dword [ebp - 0x10], esp
inc edi
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x54], ecx
test al, 1
jne 0x1004b533
or eax, edi
mov dword [0x10610900], eax
xor ebx, ebx
mov dword [ebp - 4], ebx
call fcn.1004cad3
push 0x100663be
call fcn.1004f99c
or dword [ebp - 4], 0xffffffff
pop ecx
jmp 0x1004b535
xor ebx, ebx
mov dword [ebp - 0x18], ebx
lea ecx, [ebp - 0x170]
mov dword [ebp - 0x24], 0x7df2f4a8
push 2
mov dword [ebp - 0x24], 0xfffffff8
pop esi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x24], 0xffffffff
push esi
call fcn.1000f886
mov dword [ebp - 0x2c], 0x3c407858
mov dword [ebp - 0x18], ebx
jmp 0x1004b585
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x170]
mov dword [eax + ecx*4], 0x21ac4888
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1004b572
inc dword [ebp - 0x2c]
mov dword [ebp - 0x18], ebx
jmp 0x1004b5ab
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004b5a8
push 0x1c30
push ebx
push ebx
call dword [0x10612138]
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffed
jg 0x1004b592
lea ecx, [ebp - 0x170]
call fcn.1000f8e2
imul eax, dword [ebp - 0x54], 0x2710
lea ecx, [ebp - 0x140]
push edi
add eax, dword [ebp - 0x4c]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0xaeb9ae77
call fcn.1000f886
mov dword [ebp - 0x14], ebx
jmp 0x1004b5f5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1cc], 0xdada439b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1004b5e4
mov dword [ebp - 0x14], ebx
jmp 0x1004b613
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x140]
mov dword [eax + ecx*4], 0x5559
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004b600
mov eax, dword [ebp - 0x140]
lea ecx, [ebp - 0x140]
dec dword [eax]
call fcn.1000f8e2
lea eax, [ebp - 0x70]
push eax
call fcn.1004cb40
push 3
lea ecx, [ebp - 0x164]
mov eax, dword [eax]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x2c], 0x53606de7
mov dword [ebp - 0x24], 0xfffffff9
mov dword [ebp - 0x2c], 0xea983111
mov dword [ebp - 0x3c], 0xd568d526
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x24], 0xfffffffa
mov dword [ebp - 0x38], 0x9ce456
mov dword [ebp - 0x24], 0x4d513c61
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x24], 7
pop eax
mov dword [ebp - 0x28], 0x3ffaf072
mov dword [ebp - 0x2c], 0x746a1c17
mov dword [ebp - 0x24], 0xb7ab61b5
push eax
call fcn.1000f886
push 3
mov dword [ebp - 0x2c], 0x8bc0
mov dword [ebp - 0x14], ebx
pop edx
jmp 0x1004b6bd
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x164]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x1004b6ae
mov dword [ebp - 0x14], ebx
jmp 0x1004b6d8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xf8], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1004b6c7
dec dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
cmp edx, eax
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x18]
jge 0x1004b6f5
mov ecx, edi
cmp dword [ebp - 0x3c], ebx
jne 0x1004b6f7
mov ecx, ebx
mov eax, dword [ebp - 0x164]
mov dword [eax], ecx
mov dword [ebp - 0x2c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
cmp eax, 0x76c
setl cl
mov dword [ebp - 0x28], ecx
mov ecx, 0xb0121307
mov dword [ebp - 0x3c], esi
mov eax, dword [ebp - 0xf8]
sub eax, dword [ebp - 0x3c]
neg eax
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x2c], eax
imul eax, dword [ebp - 0x2c], 0xedda
sub ecx, eax
mov eax, dword [ebp - 0xf8]
cmp eax, ecx
mov eax, dword [ebp - 0x38]
setge dl
xor ecx, ecx
cmp edx, 0x720d7006
setge cl
add eax, ecx
lea ecx, [ebp - 0x164]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x28], eax
call fcn.1000f8e2
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x1004b982
mov dword [ebp - 0x18], 0x3ad3b315
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x18], 0x1cd43096
mov dword [ebp - 0x14], edi
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0x18], ebx
jmp 0x1004b79d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x60], 0xad6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x1004b78f
dec dword [ebp - 0x60]
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], ebx
jne 0x1004b7ba
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], 0x4a9b
jl 0x1004b7cd
mov edx, ebx
cmp dword [ebp - 0x14], ebx
je 0x1004b7cf
mov edx, edi
mov eax, dword [ebp - 0x60]
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x60]
cmp edx, eax
mov eax, dword [ebp - 0x60]
setne cl
sub ecx, 0xfffffff7
neg ecx
sbb ecx, ecx
inc ecx
imul eax, ecx
cmp dword [ebp - 0x18], eax
jg 0x1004b914
push esi
lea ecx, [ebp - 0xd8]
call fcn.1000f886
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x18], ebx
jmp 0x1004b81e
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xd8]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1004b80e
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0xffffffea
jle 0x1004b8f3
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x4c], 0xbb1
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], esi
jg 0x1004b88c
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x20], 0x9b347d17
xor edx, edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp + eax*4 - 0x60]
mov eax, dword [ebp - 0x5c]
cmp ecx, eax
mov eax, dword [ebp - 0x60]
setle dl
sub edx, eax
mov eax, dword [ebp - 0x20]
lea ecx, [edx + 4]
xor edx, edx
cmp ecx, eax
setge dl
mov dword [edi + 4], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x1004b851
mov ecx, dword [ebp - 0x34]
xor edi, edi
inc edi
cmp dword [ebp - 0x3c], ebx
je 0x1004b8b6
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x60]
mov edx, dword [ecx + 4]
xor ecx, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
cmp eax, edx
setl cl
imul ecx, edx
test ecx, ecx
je 0x1004b8b6
cmp dword [ebp - 0x20], ebx
je 0x1004b8b6
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x20]
mov eax, dword [eax + 4]
sub edx, eax
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
test eax, eax
sete cl
xor eax, eax
cmp ecx, edx
mov ecx, dword [ebp - 0x34]
setne al
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffea
jg 0x1004b839
mov ecx, dword [ebp - 0xd8]
xor eax, eax
cmp dword [ecx + 4], ebx
sete al
mov dword [ecx + 4], eax
lea ecx, [ebp - 0xd8]
call fcn.1000f8e2
jmp 0x1004ca3f
mov dword [ebp - 0x20], 0xae2efaad
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x2c], 0x7f04
mov dword [ebp - 0x4c], ebx
inc dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x18]
jne 0x1004b93a
mov eax, ebx
cmp dword [ebp - 0x2c], ebx
je 0x1004b93c
mov eax, edi
mov edx, dword [ebp - 0x20]
xor ecx, ecx
add edx, eax
mov eax, dword [ebp - 0x2c]
cmp eax, edx
setg cl
cmp dword [ebp - 0x20], ecx
jne 0x1004b953
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x14], edi
jl 0x1004b95b
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x2c], 0x988
mov eax, dword [ebp - 0x18]
inc eax
imul eax, dword [ebp - 0x2c]
test eax, eax
je 0x1004b978
cmp dword [ebp - 0x18], ebx
je 0x1004b978
cmp dword [ebp - 0x60], ebx
jne 0x1004b97a
mov edi, ebx
mov dword [ebp - 0x4c], edi
jmp 0x1004ca3f
push 3
lea ecx, [ebp - 0xe4]
call fcn.1000f886
push 3
mov dword [ebp - 0x18], 0xdada439b
mov dword [ebp - 0x18], ebx
pop edx
jmp 0x1004b9ad
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xe4]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1004b99e
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004b9c5
push ebx
call dword [0x10612208]
push 3
pop edx
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], ebx
jl 0x1004ba5d
mov dword [ebp - 0x34], 0xfe4d9edb
mov dword [ebp - 0x20], ebx
jmp 0x1004b9ee
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x90], 0x24cdb8fa
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x1004b9dd
mov dword [ebp - 0x88], ebx
jmp 0x1004ba16
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0xe4]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
inc dword [ebp - 0x88]
cmp dword [ebp - 0x88], esi
jle 0x1004b9fb
mov dword [ebp - 0x34], ebx
jmp 0x1004ba4c
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x20], ebx
jmp 0x1004ba44
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xe4]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x1004ba2f
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], esi
jle 0x1004ba23
dec dword [ebp - 0x18]
push 3
pop edx
jns 0x1004b9d1
lea ecx, [ebp - 0xe4]
call fcn.1000f8e2
mov eax, dword [0x10610900]
test al, 2
jne 0x1004bafb
or eax, esi
mov dword [0x10610900], eax
push ebx
mov dword [ebp - 4], edi
push ebx
mov dword [0x10610930], ebx
mov dword [0x10610934], ebx
call fcn.10018125
mov dword [0x10610930], eax
mov dword [0x10610938], ebx
mov dword [0x10610940], ebx
mov byte [ebp - 4], 3
mov ecx, 0x10610938
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0xa4]
push eax
push 0x10
push ebx
lea eax, [ebp - 0x190]
mov dword [0x1061094c], 0x3f800000
push eax
mov dword [0x1061093c], ebx
call fcn.10017efd
push 0x100663b9
mov dword [0x10610944], 7
mov dword [0x10610948], 8
call fcn.1004f99c
or dword [ebp - 4], 0xffffffff
pop ecx
push dword [ebp + 8]
movdqa xmm0, xmmword [0x1000c340]
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x1ac]
mov dword [ebp - 0x14], 0xf5a9c4c8
push eax
push ebx
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x84], ebx
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
call fcn.100408f6
mov dword [ebp - 0x2c], 0xffff
mov dword [ebp - 0x3c], 0xfad7494d
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x2c], 0x150040b3
push 4
pop ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x34], 0xf32afcb0
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x18], ebx
jmp 0x1004bb81
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x180], 0x253d9751
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1004bb70
cmp dword [ebp - 0x14], ebx
je 0x1004bc8a
mov esi, dword [ebp - 0x84]
xor edx, edx
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x38], esi
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, dword [esi + 4]
mov ecx, dword [ebp - 0x28]
setg al
imul eax, ecx
test eax, eax
je 0x1004bbcd
test ecx, ecx
mov ecx, edi
jne 0x1004bbcf
mov ecx, ebx
xor eax, eax
cmp ecx, 0xca8c
setl al
xor edx, edx
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x3c]
add eax, dword [esi + 4]
neg eax
je 0x1004bc08
mov ecx, edi
cmp dword [ebp - 0x3c], ebx
jne 0x1004bc0a
mov ecx, ebx
xor eax, eax
cmp ecx, dword [esi + 4]
sete al
xor edx, edx
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
mov esi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x180]
setle dl
sub esi, edx
neg esi
sbb esi, esi
xor ecx, ecx
inc esi
cmp esi, eax
setne cl
xor eax, eax
cmp ecx, 0x18eb0bad
setge al
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jne 0x1004bc56
mov eax, dword [ebp - 0x38]
cmp dword [eax + 4], ebx
mov eax, ebx
je 0x1004bc58
mov eax, edi
cmp eax, dword [ebp - 0x14]
jne 0x1004bc67
mov edx, ebx
cmp dword [ebp - 0x180], ebx
je 0x1004bc69
mov edx, edi
mov eax, dword [ebp - 0x180]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x40]
push 2
setne cl
sub ecx, eax
imul ecx, dword [ebp - 0x34]
pop esi
sub ecx, dword [ebp - 0x20]
jne 0x1004bc8a
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x84]
lea ecx, [ebp - 0x84]
mov eax, dword [eax + 4]
mov dword [ebp - 0x20], eax
call fcn.1000f8e2
xorps xmm0, xmm0
lea ecx, [ebp - 0x158]
movdqu xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x2c], edi
push edi
call fcn.1000f886
mov dword [ebp - 0x14], ebx
jmp 0x1004bcce
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x68], 0xb064
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1004bcc0
mov dword [ebp - 0x14], ebx
jmp 0x1004bceb
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x158]
mov dword [eax + ecx*4], 0x2f3f6085
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004bcd8
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004bd04
push 0x26b9
call dword [0x10612234]
cmp dword [ebp - 0x64], ebx
jne 0x1004bd28
mov eax, dword [ebp - 0x64]
mov ecx, ebx
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x68], edi
je 0x1004bd2a
mov ecx, edi
mov eax, dword [ebp - 0x158]
mov dword [eax], ecx
lea ecx, [ebp - 0x158]
call fcn.1000f8e2
lea eax, [ebp - 0x54]
push eax
call fcn.1004cba2
cmp byte [ebp + 0xc], 0
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
jne 0x1004bd59
test eax, eax
jne 0x1004c078
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x34], 0xf88039d6
mov dword [ebp - 0x38], 0x5c8a52b4
mov dword [ebp - 0x24], 0xfffffff6
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x40], 0x5cd1d2a6
mov dword [ebp - 0x28], 0x1f06e85f
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x20], ebx
jmp 0x1004bd9f
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xc8], 0x10cbbbc2
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1004bd8e
mov eax, dword [ebp - 0x30]
xor ecx, ecx
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
cmp eax, edi
setge cl
cmp ecx, 0x825e
jg 0x1004be2c
mov dword [ebp - 0x24], 0xc62bb2c5
lea ecx, [ebp - 0x18c]
mov dword [ebp - 0x24], ebx
push esi
call fcn.1000f886
mov dword [ebp - 0x18], ebx
jmp 0x1004bdf8
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1004bde9
inc dword [ebp - 0x2c]
mov dword [ebp - 0x18], ebx
jmp 0x1004be17
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004be14
call dword [0x106121a4]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jle 0x1004be05
lea ecx, [ebp - 0x18c]
call fcn.1000f8e2
jmp 0x1004bf7e
mov dword [ebp - 0x20], 6
mov dword [ebp - 0x14], 0x328da4cd
mov dword [ebp - 0x14], ebx
jmp 0x1004be49
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x48], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1004be3f
cmp dword [ebp - 0x18], ebx
je 0x1004bef0
cmp dword [ebp - 0x2c], ebx
jne 0x1004bef0
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x34]
cmp eax, ecx
mov eax, dword [ebp - 0x40]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x44]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x44]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0xc8]
setne cl
mov dword [ebp - 0x2c], ecx
xor ecx, ecx
cmp dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x44]
setle cl
xor edx, edx
imul ecx, ecx, 0x268d
cmp ecx, eax
mov eax, dword [ebp - 0x44]
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x24]
sete cl
add eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x44], eax
jl 0x1004becd
mov edx, edi
cmp dword [ebp - 0x38], ebx
jne 0x1004becf
mov edx, ebx
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x44]
setne cl
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x40]
cmp ecx, eax
setl dl
add edx, dword [ebp - 0x34]
cmp edx, dword [ebp - 0x44]
jle 0x1004bef2
mov edi, ebx
mov eax, dword [ebp - 0x44]
xor edx, edx
cmp edi, 0xc86e
sete dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x44], ebx
jne 0x1004bf15
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x38]
cmp eax, 0xbb25a596
sbb eax, eax
neg eax
sub eax, dword [ebp - 0x30]
neg eax
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x44]
cmp ecx, eax
setl dl
xor eax, eax
cmp edx, 0x241e2269
setne al
imul eax, eax, 0x845d
cmp dword [ebp - 0x28], eax
jne 0x1004bf58
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp eax, ecx
setl dl
xor ecx, ecx
imul edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
cmp edx, eax
setle cl
mov dword [ebp - 0x44], ecx
mov dl, byte [ebp + 0xc]
lea eax, [ebp - 0x1bc]
mov ecx, dword [ebp - 0x54]
push eax
call fcn.10040af2
mov esi, eax
lea edi, [ebp - 0xa0]
pop ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xor edi, edi
inc edi
cmp byte [ebp + 0xc], 0
je 0x1004c075
cmp dword [ebp - 0x98], 0
je 0x1004c075
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x14], 0xd4e06482
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x24], 8
push 3
mov dword [ebp - 0xbc], eax
call fcn.1000f886
mov dword [ebp - 0x18], ebx
jmp 0x1004bff9
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x11c]
mov dword [eax + ecx*4], 0xbda99da9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x1004bfe6
mov dword [ebp - 0x14], 0x13
jmp 0x1004c015
mov dword [ebp - 0x28], 0x446df37d
dec dword [ebp - 0x28]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffffd
jge 0x1004c008
cmp dword [ebp - 0x14], ebx
jne 0x1004c035
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, 0x5faafe30
mov eax, dword [ebp - 0x20]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x11c]
setle cl
mov dword [eax], ecx
lea ecx, [ebp - 0x11c]
call fcn.1000f8e2
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0xb8], eax
push 2
pop esi
mov dword [ebp - 0x20], 0x24a8c6a5
mov dword [ebp - 0x14], 0x6f37
mov dword [ebp - 0x24], 0x2870b1b
mov dword [ebp - 0x40], 0x23830ae7
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x24], 9
mov dword [ebp - 0x24], 0x72fddd0c
mov dword [ebp - 0x24], 0x5b78c6ae
mov dword [ebp - 0x18], ebx
jmp 0x1004c0c9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x110], 0xd0509419
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x1004c0b8
mov dword [ebp - 0x20], 0xfffffffb
jmp 0x1004c226
mov dword [ebp - 0x34], 0xd69f4288
mov dword [ebp - 0x24], 0x3a9025b0
mov dword [ebp - 0x24], 0xfeccdf49
mov dword [ebp - 0x24], 0xb913a86
mov dword [ebp - 0x24], 0x52b7283d
mov dword [ebp - 0x24], 0xbc5f2630
mov dword [ebp - 0x24], 0x295d0c5
mov dword [ebp - 0x24], 0x41ec3d25
mov dword [ebp - 0x24], 0x62131ac6
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0xb9acce30
mov dword [ebp - 0x38], 0xd7e7d1c2
mov dword [ebp - 0x34], 0x17
jmp 0x1004c216
mov dword [ebp - 0x30], 0xb03629aa
mov dword [ebp - 0x30], 0xffffffeb
jmp 0x1004c209
mov dword [ebp - 0x18], 0x1c03809d
mov dword [ebp - 0x28], 0x592404e5
mov dword [ebp - 0x24], 0xb9f5ab1
cmp dword [ebp - 0x30], ebx
je 0x1004c201
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x34]
neg eax
je 0x1004c193
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
mov dword [ebp - 0x28], eax
jne 0x1004c1ad
mov edx, ebx
cmp dword [ebp - 0x28], ebx
je 0x1004c1af
mov edx, edi
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x34]
setne cl
xor edx, edx
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x30]
neg edx
sbb edx, edx
inc edx
cmp edx, 0xfff8
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x9284
mov eax, dword [ebp - 0x18]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setle dl
sub edx, 5
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, edi
setg cl
cmp dword [ebp - 0x18], ecx
jg 0x1004c203
mov eax, ebx
mov dword [ebp - 0x24], eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0x1a
jge 0x1004c14a
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xd
jge 0x1004c137
dec dword [ebp - 0x38]
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffea
jg 0x1004c0db
mov dword [ebp - 0x14], ebx
jmp 0x1004c2ce
mov dword [ebp - 0x28], 0xb5db27c3
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x110], ebx
je 0x1004c27a
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov edx, edi
mov eax, dword [ebp + eax*4 - 0x110]
cmp eax, 0xffffffff
setge cl
xor eax, eax
add ecx, dword [ebp - 0x20]
cmp ecx, 0xec38
setl al
cmp eax, 0xd17319f5
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x40]
jge 0x1004c27c
mov edx, ebx
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp + eax*4 - 0x110]
mov eax, dword [ebp - 0x14]
add ecx, edx
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x110]
imul ecx, eax
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x110], ecx
mov eax, dword [ebp - 0x28]
imul ecx, ecx, 0xfffffff7
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0x9b64
setle al
mov dword [ebp - 0x28], eax
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004c2cb
push ebx
push ebx
call dword [0x1061219c]
inc dword [ebp - 0x14]
push 3
pop ecx
cmp dword [ebp - 0x14], ecx
jle 0x1004c238
cmp dword [ebp - 0x3c], 0
jne 0x1004c7b6
cmp dword [ebp - 0xa0], 0
jle 0x1004c7b6
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0xfffffff8
mov dword [ebp - 0x24], 0xef3cf687
mov dword [ebp - 0x24], 0x559653e3
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], ebx
jmp 0x1004c329
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xb0], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1004c318
mov dword [ebp - 0x14], ebx
jmp 0x1004c344
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x100], 0xcbf7935d
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1004c333
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004c35f
push 0x66e
push ebx
push ebx
call dword [0x1061215c]
mov dword [ebp - 0x30], esi
cmp dword [ebp - 0x30], ebx
jl 0x1004c450
mov dword [ebp - 0x20], 0xf390197f
mov dword [ebp - 0x2c], 0x6c3a0b8e
mov dword [ebp - 0x24], 0xafcb143e
mov dword [ebp - 0x24], 4
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], ebx
jl 0x1004c39e
mov dword [ebp - 0x28], 0xde9bf9f
inc dword [ebp - 0x28]
dec dword [ebp - 0x20]
jns 0x1004c38f
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0xb0], ebx
jne 0x1004c3c4
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xb0]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xb0]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0xb0]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0xb0], ebx
je 0x1004c3fb
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004c447
push 0x7de
push ebx
push ebx
call dword [0x10612140]
jmp 0x1004c447
mov dword [ebp - 0x24], 0x462a
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x20], ebx
jmp 0x1004c43c
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004c424
push ebx
push 0x816
push ebx
call dword [0x10612030]
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004c439
push ebx
push 0x1bb5
call dword [0x10612248]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x1004c40e
dec dword [ebp - 0x100]
dec dword [ebp - 0x30]
jns 0x1004c36b
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x30], ebx
jmp 0x1004c49d
mov dword [ebp - 0x18], 0x22124f84
mov dword [ebp - 0x18], 0xffffffea
jmp 0x1004c494
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004c491
push 0x1596
push 0xa1f
push ebx
push ebx
push 0x1a4e
push 0x1c91
call dword [0x106122a8]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffff
jle 0x1004c46c
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xe
je 0x1004c45c
mov dword [ebp - 0x30], 0xffffffff
jmp 0x1004c4c3
mov dword [ebp - 0x24], 0xfffffffa
mov dword [ebp - 0x28], 0x5cc25bfc
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0x1d
jl 0x1004c4ac
mov dword [ebp - 0x24], ebx
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x28], 0xd444182b
mov dword [ebp - 0x28], 0xfffffffc
push esi
call fcn.1000f886
push edi
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 4
call fcn.1000f886
mov dword [ebp - 0x28], 0x1d5f
mov dword [ebp - 0x28], 0x24380d33
mov dword [ebp - 0x14], ebx
jmp 0x1004c51b
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x128]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1004c50c
mov dword [ebp - 0x14], ebx
jmp 0x1004c538
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xf0]
mov dword [eax + ecx*4], 0x12af0488
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004c525
mov dword [ebp - 0x14], ebx
jmp 0x1004c550
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x50], 0xf340
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004c542
mov dword [ebp - 0x28], edi
mov ecx, dword [ebp - 0x28]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
imul ecx, dword [ebp - 0x50]
cmp ecx, 8
setg al
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x128]
mov dword [eax + 4], esi
mov eax, dword [ebp - 0x50]
cmp ecx, eax
sbb eax, eax
xor edx, edx
neg eax
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
inc eax
add ecx, eax
mov eax, dword [ebp - 0x50]
cmp ecx, eax
setle dl
xor eax, eax
test esi, esi
setns al
sub eax, edx
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0xf0]
mov esi, dword [eax]
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x24], eax
mov eax, dword [ebp - 0xf0]
setne cl
xor edx, edx
cmp ecx, 7
lea ecx, [esi - 1]
mov dword [eax], ecx
setg dl
cmp esi, edx
lea ecx, [ebp - 0xf0]
mov eax, edi
cmovle eax, ebx
mov dword [ebp - 0x28], eax
call fcn.1000f8e2
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x128]
call fcn.1000f8e2
push edi
lea ecx, [ebp - 0x134]
call fcn.1000f886
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x24], 0xd7d393e7
mov dword [ebp - 0x24], 0xfffffffa
mov dword [ebp - 0x28], 0x5943e2f7
mov dword [ebp - 0x14], ebx
jmp 0x1004c63d
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x134]
mov dword [eax + ecx*4], 0x7a00
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004c62a
mov dword [ebp - 0x14], ebx
jmp 0x1004c654
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1dc], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1004c647
mov eax, dword [ebp - 0x18]
add eax, 0xe4a6
cmp dword [ebp - 0x18], eax
jne 0x1004c66a
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x134]
xor ecx, ecx
mov edx, dword [eax]
mov eax, dword [ebp - 0x18]
cmp eax, edx
mov eax, edx
setl cl
sub eax, ecx
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setge cl
xor edx, edx
cmp ecx, 0xddd
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
cmp eax, edi
setge cl
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x134]
call fcn.1000f8e2
cmp dword [ebp - 0x9c], 0
je 0x1004c7b6
mov dword [ebp - 0x18], 0xfffffff6
mov dword [ebp - 0x14], ebx
jmp 0x1004c6e0
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004c6d3
mov dword [ebp - 0x14], ebx
jmp 0x1004c6fb
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xcc], 0x5706b379
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004c6ea
mov dword [ebp - 0x18], ebx
jmp 0x1004c763
mov dword [ebp - 0x14], ebx
jmp 0x1004c718
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x6c], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004c70a
mov dword [ebp - 0x14], ebx
jmp 0x1004c730
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x78], 0x10977a12
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1004c722
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xcc], ebx
mov dword [ebp - 0x6c], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jg 0x1004c705
mov ecx, dword [ebp - 0x9c]
call fcn.1004b4a4
mov dword [ebp - 0x24], 0xffffffff
mov esi, eax
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
mov dword [ebp - 0x3c], esi
je 0x1004c794
push 0xdbd
push ebx
call dword [0x1061213c]
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x1004c7ab
push 0x1297
push ebx
push ebx
push ebx
call dword [0x10612048]
lea eax, [ebp - 0x54]
push eax
call fcn.1004cba2
mov dword [eax], esi
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], 0x47d1
mov dword [ebp - 0x38], 0x56ec
mov dword [ebp - 0x38], 0xdd635290
mov dword [ebp - 0x38], 5
mov dword [ebp - 0x18], ebx
jmp 0x1004c7e7
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1004c7da
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setge cl
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xb4]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0xa0]
call fcn.1004782d
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x40], 0xfffffffc
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], 0x71cb
cmp dword [ebp - 0x28], 0x74e8
jle 0x1004c88d
mov edi, ebx
mov esi, ebx
mov dword [ebp - 0x24], ebx
mov eax, esi
mov ecx, 0x1060f718
cdq
idiv ebx
xor edx, edi
mov eax, edx
cdq
push edx
push eax
call fcn.1000f771
inc ebx
cmp ebx, 0x7851
jl 0x1004c856
inc esi
push 0
pop ebx
cmp esi, 0x6b0c
jl 0x1004c853
inc edi
cmp edi, 0x60b7
jl 0x1004c851
xor edi, edi
inc edi
mov dword [ebp - 0x38], 9
mov dword [ebp - 4], 5
cmp dword [ebp - 0x28], 0x708e
jge 0x1004c8b3
mov edx, 0x1000c268
mov ecx, 0x1060f718
call fcn.100111e1
or dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x3c]
mov dword [ebp - 0x14], 0xffffffeb
jmp 0x1004c98f
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x14], ebx
jne 0x1004c999
mov eax, dword [ebp - 0x14]
mov ecx, 0xd63a
sub ecx, eax
mov dword [ebp - 0x28], ecx
je 0x1004c96b
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp eax, 0x5ba5
mov eax, dword [ebp - 0x28]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
neg eax
sbb eax, eax
xor edx, edx
inc eax
add eax, dword [ebp - 0x40]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x38]
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setne cl
xor edx, edx
cmp ecx, 0x46d2
mov ecx, edi
setle dl
add eax, 0x535a
add eax, edx
jne 0x1004c96d
mov ecx, ebx
mov eax, dword [ebp - 0x14]
sub ecx, eax
imul edx, ecx, 9
xor ecx, ecx
sub edx, dword [ebp - 0x14]
imul edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
cmp edx, eax
setg cl
sub ecx, dword [ebp - 0x18]
mov dword [ebp - 0x24], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xb
jge 0x1004c8eb
test esi, esi
je 0x1004ca3f
push 2
lea ecx, [ebp - 0x14c]
call fcn.1000f886
push edi
lea ecx, [ebp - 0x19c]
mov dword [ebp - 4], 7
call fcn.1000f886
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x14], ebx
jmp 0x1004c9dc
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1004c9cd
mov dword [ebp - 0x14], ebx
jmp 0x1004c9fa
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x19c]
mov dword [eax + ecx*4], 5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1004c9e7
mov eax, dword [ebp - 0x14c]
lea ecx, [ebp - 0x19c]
mov dword [eax + 4], ebx
call fcn.1000f8e2
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.1000f8e2
mov edx, dword [ebp - 0x4c]
mov ecx, esi
call fcn.1004b4df
mov esi, eax
lea eax, [ebp - 0x70]
push eax
mov dword [ebp - 0xc0], esi
call fcn.1004cb40
mov dword [eax], esi
mov eax, dword [ebp + 8]
lea esi, [ebp - 0xc0]
mov ecx, dword [ebp - 0xc]
mov edi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret