Function at 0x44a6b9
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x4cb7bd
call fcn.004cafb8
sub esp, 0x1ac
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
push 2
pop esi
mov dword [ebp - 0x18], esi
xor ebx, ebx
mov dword [ebp - 0x14], ebx
jmp 0x44a6ed
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x90], 7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x44a6dc
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], bl
je 0x44a702
push ebx
push ebx
call dword [0xae0030]
mov dword [ebp - 0x18], ebx
xor edi, edi
inc edi
cmp dword [ebp - 0x18], 0xe
jne 0x44a800
mov dword [ebp - 0x28], 0x29bf390
mov dword [ebp - 0x14], ebx
jmp 0x44a72f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x148], 0xfffffffd
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x44a71e
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], bl
je 0x44a753
push ebx
push 0x235
push 0x1848
push 0x775
call dword [0xae00f4]
mov dword [ebp - 0x28], ebx
jmp 0x44a7ef
mov dword [ebp - 0x34], 0xde6b9338
mov dword [ebp - 0x2c], 0x5b0b56ce
mov dword [ebp - 0x14], ebx
jmp 0x44a77f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x88], 0x8884515f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x44a76e
mov eax, dword [ebp - 0x28]
cmp dword [ebp + eax*4 - 0x90], ebx
je 0x44a7c6
mov dword [ebp - 0x14], ebx
jmp 0x44a7a3
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x78], 0x85a9576c
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x44a795
mov dword [ebp - 0x70], ebx
jmp 0x44a7bf
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x90], 0xffffffff
inc dword [ebp - 0x70]
cmp dword [ebp - 0x70], esi
jl 0x44a7ae
jmp 0x44a7ec
mov dword [ebp - 0x38], ebx
mov eax, dword [ebp - 0x28]
cmp dword [ebp + eax*4 - 0x90], ebx
jne 0x44a7f8
mov dword [ebp - 0x88], 0x1ba
mov eax, dword [ebp - 0x34]
xor ecx, ecx
test eax, eax
setg cl
mov dword [ebp - 0x2c], ecx
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edi
jle 0x44a75b
inc dword [ebp - 0x18]
jmp 0x44a708
mov dword [ebp - 0x38], 0xfffffffe
mov dword [ebp - 0x30], 0x78fd
mov dword [ebp - 0x2c], 0xac7400
cmp dword [ebp - 0x30], 0x7cb8
jle 0x44a88f
push ebx
push ebx
push ebx
call dword [0xae0320]
mov dword [ebp - 0x18], ebx
mov edi, ebx
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x28], 0x7409
mov ecx, ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x34], ebx
mov eax, edi
cdq
idiv ecx
mov edi, edx
mov eax, edi
or eax, ebx
cdq
push edx
push eax
mov ecx, 0xadd958
call fcn.00424afd
inc ebx
cmp ebx, 0x83f
jl 0x44a845
mov ecx, dword [ebp - 0x20]
inc ecx
mov dword [ebp - 0x20], ecx
cmp ecx, 0x5c7b
push 0
pop ebx
mov edi, dword [ebp - 0x14]
jl 0x44a83b
mov eax, dword [ebp - 0x18]
add edi, eax
mov dword [ebp - 0x14], edi
dec dword [ebp - 0x28]
jne 0x44a836
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x6810
jl 0x44a82a
xor edi, edi
inc edi
mov dword [ebp - 0x1c], 0xa48bbca6
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x18], ebx
jmp 0x44a8b0
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x3c], 0x921ded68
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x44a8a2
mov dword [ebp - 0x18], ebx
jmp 0x44a8c7
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xf8], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x44a8ba
mov dword [ebp - 0x1c], ebx
push 7
pop eax
cmp dword [ebp - 0x1c], eax
jne 0x44a9b7
mov dword [ebp - 0x18], 0x8da
cmp dword [ebp - 0x18], 0xc65
jle 0x44a951
push 0x1ffb
push ebx
push 0x9e9
call dword [0xae00b8]
mov eax, ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x14], 0x5ac9
cdq
push edx
push eax
lea ecx, [ebp - 0x160]
call fcn.0040195e
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x44a923
mov eax, dword [eax]
push eax
call fcn.004b5807
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x160]
call fcn.0042501d
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
dec dword [ebp - 0x14]
jne 0x44a90b
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp eax, 0x5af7
jl 0x44a901
mov dword [ebp - 0x14], 0xb0647dc4
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x18], 0x7d1
jge 0x44a96f
push 0xac7430
call fcn.004b5807
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x44a99b
push 7
pop eax
mov dword [ebp - 0x14], ebx
jmp 0x44a9a9
mov dword [ebp - 0x3c], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 6
jl 0x44a9a3
inc dword [ebp - 0x1c]
jmp 0x44a8d2
mov dword [ebp - 0x18], 0x10bf
cmp dword [ebp - 0x18], 0x1396
jle 0x44aa1c
mov ecx, ebx
mov dword [ebp - 0x20], ebx
mov eax, ebx
mov dword [ebp - 0x14], ebx
and eax, ecx
cdq
push edx
push eax
lea ecx, [ebp - 0x178]
call fcn.0040195e
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x44a9eb
mov eax, dword [eax]
push eax
call fcn.004b5807
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x178]
call fcn.0042501d
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x5312
mov ecx, dword [ebp - 0x20]
jl 0x44a9d1
inc ecx
mov dword [ebp - 0x20], ecx
cmp ecx, 0x1588
jl 0x44a9cc
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x44ab0c
mov dword [ebp - 0x20], 0x2d7af2c9
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x28], 5
mov dword [ebp - 0x14], 0xaa9634d7
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
mov dword [ebp - 0x20], 0xf839e071
mov eax, dword [ebp - 0x3c]
mov ecx, 0x6497
sub ecx, eax
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
cmp eax, dword [ebp - 0x3c]
je 0x44aa88
cmp dword [ebp - 0x28], ebx
mov eax, ebx
je 0x44aa8a
mov eax, edi
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp eax, ecx
setg dl
mov eax, dword [ebp - 0x1c]
sub edx, dword [ebp + eax*4 - 0x3c]
mov ecx, dword [ebp - 0x3c]
add ecx, edx
mov eax, dword [ebp - 0x1c]
cmp ecx, dword [ebp + eax*4 - 0x3c]
jge 0x44aaba
cmp dword [ebp - 0x3c], ebx
mov edx, edi
jne 0x44aabc
mov edx, ebx
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x34], ecx
mov esi, dword [ebp - 0x20]
add esi, dword [ebp - 0x3c]
neg esi
sbb esi, esi
neg esi
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp esi, eax
setne cl
xor eax, eax
cmp edx, ecx
setle al
imul ecx, eax, 0x1d4
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x3c], ecx
dec dword [ebp - 0x1c]
jns 0x44aa28
push 2
pop esi
mov dword [ebp - 4], esi
cmp dword [ebp - 0x18], 0xf95
jge 0x44ab23
push 0xac74b0
call fcn.004b5807
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x44ab4f
mov dword [ebp - 4], 4
cmp dword [ebp - 0x30], 0x7752
jge 0x44ab6c
mov edx, dword [ebp - 0x2c]
mov ecx, 0xadd958
call fcn.004268b3
or dword [ebp - 4], 0xffffffff
jmp 0x44ab98
mov dword [ebp - 0x38], 0xfe7d8a87
push esi
lea ecx, [ebp - 0xb0]
call fcn.00424c41
push edi
lea ecx, [ebp - 0xe4]
call fcn.00424c41
push 4
lea ecx, [ebp - 0xf0]
call fcn.00424c41
mov dword [ebp - 0x1c], ebx
jmp 0x44abd8
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xb0]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x44abc9
mov dword [ebp - 0x1c], ebx
jmp 0x44abf5
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xe4]
mov dword [eax + ecx*4], 0x5459eeda
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x44abe2
mov dword [ebp - 0x1c], ebx
jmp 0x44ac12
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xf0]
mov dword [eax + ecx*4], 0xc3825062
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x44abff
mov eax, dword [ebp - 0xb0]
mov dword [eax + 4], ebx
lea ecx, [ebp - 0xf0]
call fcn.00424d13
lea ecx, [ebp - 0xe4]
call fcn.00424d13
lea ecx, [ebp - 0xb0]
call fcn.00424d13
mov dword [ebp - 0x38], 0x9d05ba77
push edi
lea ecx, [ebp - 0x110]
call fcn.00424c41
mov dword [ebp - 0x14], 0xfffffffe
mov dword [ebp - 0x14], ebx
jmp 0x44ac74
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x110]
mov dword [eax + ecx*4], 8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x44ac61
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x44ac8a
push ebx
push ebx
call dword [0xae0374]
mov dword [ebp - 0x14], ebx
jmp 0x44aca9
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x44aca6
push ebx
push 0x988
push ebx
push ebx
call dword [0xae0344]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jle 0x44ac8f
lea ecx, [ebp - 0x110]
call fcn.00424d13
mov dword [ebp - 0x38], 0xb9da4d07
mov dword [ebp - 0x38], 0xe704f3d
push 3
lea ecx, [ebp - 0xbc]
call fcn.00424c41
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0xcc], edi
mov dword [ebp - 0xc8], edi
mov dword [ebp - 0xc4], edi
mov dword [ebp - 0xc0], edi
mov dword [ebp - 0x34], 0x11378331
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x14], ebx
jmp 0x44ad11
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xbc]
mov dword [eax + ecx*4], 0xfdf99ff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x44acfe
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], ebx
jl 0x44ad6d
mov edx, 0xdfc1
mov dword [ebp - 0x14], 0xffff
mov dword [ebp - 0x30], 0x42b6
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0xbc]
mov dword [eax], edi
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xcc], edx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp eax, edx
setle cl
mov dword [ebp - 0x34], ecx
dec dword [ebp - 0x18]
jns 0x44ad24
lea ecx, [ebp - 0xbc]
call fcn.00424d13
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x2c], 0x7216709e
mov dword [ebp - 0x2c], ebx
push 4
lea ecx, [ebp - 0xd8]
call fcn.00424c41
mov dword [ebp - 0x2c], 0xfffc
mov dword [ebp - 0x14], ebx
jmp 0x44adcf
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xd8]
mov dword [eax + ecx*4], 0x8a36a77d
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x44adbc
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], esi
jle 0x44b073
mov dword [ebp - 0x28], 0xfffffffb
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x30], 0xffffffff
push 3
lea ecx, [ebp - 0x104]
call fcn.00424c41
mov dword [ebp - 0x28], 0x2ed1
cmp dword [ebp - 0x28], 0x3031
jle 0x44ae67
mov eax, ebx
mov dword [ebp - 0x14], ebx
mov ecx, ebx
mov dword [ebp - 0x30], ebx
cdq
idiv ecx
mov eax, edx
cdq
push edx
push eax
lea ecx, [ebp - 0x1a8]
call fcn.0040195e
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x44ae36
mov eax, dword [eax]
push eax
call fcn.004b5807
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x1a8]
call fcn.0042501d
mov ecx, dword [ebp - 0x30]
inc ecx
mov dword [ebp - 0x30], ecx
cmp ecx, 0x5803
mov eax, dword [ebp - 0x14]
jl 0x44ae19
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x617e
jl 0x44ae14
mov dword [ebp - 0x30], 3
mov dword [ebp - 4], 6
cmp dword [ebp - 0x28], 0x2d7d
jge 0x44ae89
push 0xac7568
call fcn.004b5807
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x44aeb5
mov dword [ebp - 0x28], 0x7d07
cmp dword [ebp - 0x28], 0x7d96
jle 0x44af24
mov edi, ebx
mov dword [ebp - 0x14], ebx
mov eax, ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], edi
mov ecx, eax
sar edi, cl
mov eax, edi
mov ecx, ebx
shl eax, cl
cdq
push edx
push eax
mov ecx, 0xadd958
call fcn.00424afd
inc ebx
cmp ebx, 0x7e31
jl 0x44aed9
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp eax, 0x6966
push 0
pop ebx
mov edi, dword [ebp - 0x14]
jl 0x44aecf
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x66d4
jl 0x44aeca
push ebx
push 0x5a4
call dword [0xae0474]
xor edi, edi
inc edi
mov dword [ebp - 0x30], 0xd982fc9a
mov dword [ebp - 4], 8
cmp dword [ebp - 0x28], 0x7958
jge 0x44af4a
mov edx, 0xac7590
mov ecx, 0xadd958
call fcn.004268b3
or dword [ebp - 4], 0xffffffff
jmp 0x44af76
mov dword [ebp - 0x18], ebx
jmp 0x44af8e
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x104]
mov dword [eax + ecx*4], 0x636717b3
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x44af7b
mov dword [ebp - 0x18], ebx
jmp 0x44afa7
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5c], 0x964e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x44af99
mov dword [ebp - 0x28], ebx
jmp 0x44b053
mov dword [ebp - 0x14], 0xfffffffb
mov dword [ebp - 0x14], ebx
jmp 0x44afd1
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xa4], 0xf7d6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x44afc0
mov dword [ebp - 0x14], 0xffffffe8
jmp 0x44b04a
mov dword [ebp - 0x18], 0x8999d94b
mov dword [ebp - 0x30], 0x81dda8db
mov dword [ebp - 0x18], ebx
jmp 0x44b042
mov dword [ebp - 0x30], 0xffffffff
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0xa4], ebx
jne 0x44b047
mov eax, dword [ebp - 0x28]
dec dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x1c], eax
jle 0x44b029
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0xa4]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
push 0xfffffffffffffffc
pop ecx
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x30], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jle 0x44aff2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x14
je 0x44afdf
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xfffffff0
jge 0x44afb4
inc dword [ebp - 0x2c]
lea ecx, [ebp - 0x104]
call fcn.00424d13
inc dword [ebp - 0x20]
jmp 0x44add8
lea ecx, [ebp - 0xd8]
call fcn.00424d13
mov eax, 0xf7e2799a
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x64], 0xfffffff4
cmp dword [ebp - 0x64], 0xffffffe9
je 0x44b305
mov dword [ebp - 0x18], 0x5b7cefa9
mov dword [ebp - 0x18], 0xfffffff3
cmp dword [ebp - 0x18], 0xffffffef
jne 0x44b2fd
mov dword [ebp - 0x40], 0x5edb
cmp dword [ebp - 0x40], 0x61c6
jle 0x44b11f
mov dword [ebp - 0x20], ebx
mov edi, ebx
mov ecx, ebx
mov dword [ebp - 0x2c], ecx
mov ebx, dword [ebp - 0x20]
mov eax, edi
sar eax, cl
xor eax, ebx
cdq
push edx
push eax
mov ecx, 0xadd958
call fcn.00424afd
mov ecx, dword [ebp - 0x2c]
inc ecx
mov dword [ebp - 0x2c], ecx
cmp ecx, 0x4832
jl 0x44b0d5
inc edi
cmp edi, 0x78bc
push 0
pop ebx
jl 0x44b0cd
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp eax, 0x5257
jl 0x44b0cb
push 0x7a6
call dword [0xae02b4]
xor edi, edi
inc edi
mov dword [ebp - 0x1c], 0xfffffff9
mov dword [ebp - 4], 0xa
cmp dword [ebp - 0x40], 0x5bf2
jge 0x44b145
mov edx, 0xac7618
mov ecx, 0xadd958
call fcn.004268b3
or dword [ebp - 4], 0xffffffff
jmp 0x44b171
movdqa xmm0, xmmword [0xacfba0]
movdqu xmmword [ebp - 0x120], xmm0
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
push dword [ebp - 0x5c]
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x120]
push eax
push ebx
lea ecx, [ebp - 0x84]
call fcn.00426e0b
mov dword [ebp - 0x38], 0xfffffff9
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x28], 0xfe2c
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x1c], ebx
jmp 0x44b272
mov dword [ebp - 0x2c], 0xe0cd1b7e
mov dword [ebp - 0x38], 0xffffffff
push esi
lea ecx, [ebp - 0x9c]
call fcn.00424c41
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x20], ebx
jmp 0x44b207
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x9c]
mov dword [eax + ecx*4], 0x4e63
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x44b1f4
cmp dword [ebp - 0x18], ebx
jne 0x44b27e
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setl dl
cmp edx, edi
jge 0x44b228
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x1c]
jg 0x44b240
cmp dword [ebp - 0x1c], ebx
mov eax, ebx
je 0x44b242
mov eax, edi
mov edx, dword [ebp - 0x14]
imul edx, eax
mov eax, dword [ebp - 0x9c]
imul edx, dword [eax]
mov eax, dword [ebp - 0x6c]
xor ecx, ecx
cmp eax, edx
setne cl
mov eax, dword [ebp - 0x18]
imul eax, ecx
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x9c]
call fcn.00424d13
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 7
je 0x44b1d2
jmp 0x44b289
lea ecx, [ebp - 0x9c]
call fcn.00424d13
mov dword [ebp - 0x14], 0x14
jmp 0x44b2e4
mov dword [ebp - 0x1c], ebx
jmp 0x44b2db
mov dword [ebp - 0x20], ebx
jmp 0x44b2ad
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x13c], 0x771f
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x44b29c
mov dword [ebp - 0x28], ebx
jmp 0x44b2d2
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x84]
cmp dword [eax + ecx*4], edi
setle dl
mov dword [ebp - 0x134], edx
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 3
jle 0x44b2b8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jle 0x44b297
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xc
jg 0x44b292
lea ecx, [ebp - 0x84]
call fcn.00424d13
dec dword [ebp - 0x18]
jmp 0x44b0ae
dec dword [ebp - 0x64]
jmp 0x44b096
mov dword [ebp - 0x20], ebx
jmp 0x44b317
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1b8], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x44b30a
dec dword [ebp - 0x34]
mov dword [ebp - 0x18], 0x3ae35568
mov dword [ebp - 0x1c], 0x62513244
mov dword [ebp - 0x38], 0xac5b6cc6
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x18], 0xfffffff2
cmp dword [ebp - 0x18], 0xb
jne 0x44b614
push esi
lea ecx, [ebp - 0x4c]
call fcn.00424c41
movdqa xmm0, xmmword [0xacfbb0]
movdqu xmmword [ebp - 0x130], xmm0
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
push dword [ebp - 0x5c]
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x130]
push eax
push ebx
lea ecx, [ebp - 0x58]
call fcn.00426e0b
mov dword [ebp - 0x34], 3
mov dword [ebp - 0x20], ebx
jmp 0x44b3a5
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x4c]
mov dword [eax + ecx*4], 0xea98
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x44b395
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
je 0x44b40d
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax + 4]
add edx, 0xc207
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
cmp ecx, 7
setl dl
sub edx, dword [ebp - 0x1c]
sub edx, 0xbc1c234a
neg edx
sbb edx, edx
inc edx
xor eax, eax
cmp edx, esi
setl al
xor ecx, ecx
cmp eax, esi
setg cl
push 7
pop eax
cmp eax, ecx
sbb ecx, ecx
neg ecx
mov eax, dword [ebp - 0x58]
mov dword [eax + 0xc], ecx
cmp ecx, 0xffff
mov ecx, edi
ja 0x44b40f
mov ecx, ebx
add ecx, 6
mov eax, dword [ebp - 0x4c]
cmp dword [eax], ecx
jge 0x44b446
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x44b5e2
push 0xfa6
push ebx
push 0x1eb2
push 0x1a5c
push 0x1a8
call dword [0xae0134]
jmp 0x44b5e2
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x38], 0xfffffff8
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], ebx
jl 0x44b57e
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x40], 0x7d1c
cmp dword [ebp - 0x40], 0x800b
jle 0x44b4c5
mov esi, ebx
mov dword [ebp - 0x2c], ebx
mov edi, esi
mov dword [ebp - 0x34], 0x7ca9
mov esi, ebx
lea eax, [edi + esi]
cdq
push edx
push eax
mov ecx, 0xadd958
call fcn.00424afd
inc esi
cmp esi, 0x7e76
jl 0x44b482
dec edi
dec dword [ebp - 0x34]
jne 0x44b480
mov esi, dword [ebp - 0x2c]
inc esi
mov dword [ebp - 0x2c], esi
cmp esi, 0x10f9
jl 0x44b477
xor edi, edi
inc edi
push ebx
push 0x160a
push ebx
push 0x587
call dword [0xae0130]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
cmp eax, dword [ecx + edx*4]
push 0
pop eax
setle al
mov ecx, dword [ebp - 0x1c]
imul ecx, eax
mov eax, dword [ebp - 0x58]
add ecx, dword [eax + 0xc]
mov eax, dword [ebp - 0x18]
imul eax, ecx
xor edx, edx
cmp eax, 0xffffffff
setg dl
mov eax, dword [ebp - 0x18]
sub eax, 0x9eb818f
xor ecx, ecx
cmp eax, edx
setne cl
xor edx, edx
mov eax, dword [ebp - 0x4c]
cmp dword [eax + esi*4], ecx
setne dl
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setge cl
mov eax, dword [ebp - 0x58]
mov dword [eax + 4], ecx
mov dword [ebp - 4], 0xc
cmp dword [ebp - 0x40], 0x7a6b
jge 0x44b548
mov edx, 0xac7694
mov ecx, 0xadd958
call fcn.004268b3
or dword [ebp - 4], 0xffffffff
jmp 0x44b571
cmp dword [ebp - 0x18], ebx
jne 0x44b57e
dec dword [ebp - 0x1c]
jmp 0x44b456
cmp dword [ebp - 0x20], ebx
je 0x44b5ae
cmp dword [ebp - 0x1c], ebx
jne 0x44b59c
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, 0xa48b
setle cl
cmp dword [ebp - 0x18], ecx
mov eax, ebx
jl 0x44b59e
mov eax, edi
cmp eax, edi
sbb eax, eax
inc eax
mov edx, dword [ebp - 0x4c]
cmp eax, dword [edx]
je 0x44b5b1
mov esi, edi
jmp 0x44b5b3
mov edx, dword [ebp - 0x4c]
mov esi, ebx
mov eax, dword [ebp - 0x58]
mov dword [eax + 8], esi
xor ecx, ecx
cmp esi, dword [edx]
sete cl
mov eax, dword [ebp - 0x14]
add eax, ecx
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x14]
imul ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x4c]
sub ecx, dword [eax]
neg ecx
sbb ecx, ecx
inc ecx
mov eax, dword [ebp - 0x14]
imul eax, ecx
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x58]
mov dword [eax + 0xc], edx
xor ecx, ecx
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 4], edx
setle cl
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x58]
call fcn.00424d13
lea ecx, [ebp - 0x4c]
call fcn.00424d13
inc dword [ebp - 0x18]
push 2
pop esi
jmp 0x44b343
cmp dword [ebp - 0x1c], edi
sbb eax, eax
neg eax
imul ecx, eax, 0x8a1c
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setl dl
add edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
sub eax, 0x18879519
neg eax
sbb eax, eax
inc eax
cmp eax, edx
jne 0x44b646
cmp dword [ebp - 0x1c], ebx
mov ecx, ebx
je 0x44b648
mov ecx, edi
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x1c]
imul edx, ecx
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp eax, edx
setl cl
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x2c], 0x591a
cmp dword [ebp - 0x2c], 0x5c1e
jle 0x44b6ec
mov esi, ebx
mov ecx, ebx
mov dword [ebp - 0x20], ebx
mov eax, ebx
mov dword [ebp - 0x34], ebx
or eax, ecx
or eax, esi
cdq
push edx
push eax
lea ecx, [ebp - 0x190]
call fcn.0040195e
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x44b69c
mov eax, dword [eax]
push eax
call fcn.004b5807
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x190]
call fcn.0042501d
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp eax, 0x68ea
mov ecx, dword [ebp - 0x20]
jl 0x44b680
inc ecx
mov dword [ebp - 0x20], ecx
cmp ecx, 0x3c00
jl 0x44b67b
inc esi
cmp esi, 0xaea
jl 0x44b676
push 0x1ef5
push 0x1300
push 0x1d9f
push ebx
call dword [0xae04e0]
mov dword [ebp - 4], 0xe
cmp dword [ebp - 0x2c], 0x5896
jge 0x44b707
push 0xac76dc
call fcn.004b5807
pop ecx
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret