Function at 0x4482a8
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x4b41ff
call fcn.004b3750
sub esp, 0x158
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x18], 3
mov dword [ebp - 0x2c], 0xfff6
xor ebx, ebx
mov dword [ebp - 0x30], ebx
jmp 0x4482e4
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x10c], 0xa2768935
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 4
jl 0x4482d3
mov dword [ebp - 0x18], 0xffffffe3
xor esi, esi
inc esi
cmp dword [ebp - 0x18], 0xb
je 0x4483ff
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x28], 0xde6f885e
mov dword [ebp - 0x24], 0xef51ae9a
inc dword [ebp - 0x20]
mov dword [ebp - 0x34], 0x2131
cmp dword [ebp - 0x34], 0x2514
jle 0x448372
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x28], ebx
xor eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0x134]
call fcn.00401a8e
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x448347
mov eax, dword [eax]
push eax
call fcn.0049dfa7
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x134]
call fcn.0042e7d8
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp eax, 0x12b7
jl 0x44832d
inc edi
cmp edi, 0x58c6
jl 0x448328
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
inc eax
neg eax
cmp eax, 0xfffffff7
jle 0x448394
mov eax, dword [ebp - 0x2c]
mov edx, esi
jmp 0x448396
mov edx, ebx
mov eax, dword [ebp - 0x20]
sub edx, eax
add edx, 0x42f88d96
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
setle cl
mov eax, dword [ebp - 0x20]
sub eax, ecx
imul eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x34], 0x1f78
jge 0x4483ce
push 0xacd0a8
call fcn.0049dfa7
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x4483f7
inc dword [ebp - 0x18]
jmp 0x4482f4
mov dword [ebp - 0x28], 0x2b6a
cmp dword [ebp - 0x28], 0x2e01
jle 0x448446
mov edi, ebx
mov esi, ebx
lea eax, [esi + edi]
cdq
push edx
push eax
mov ecx, 0xae6c18
call fcn.0042e2b8
inc esi
cmp esi, 0x1381
jl 0x448413
inc edi
cmp edi, 0x49cb
jl 0x448411
push 0x1519
push ebx
push ebx
push ebx
call dword [0xaea09c]
xor esi, esi
inc esi
mov dword [ebp - 0x14], 0x3b26bdde
mov dword [ebp - 4], 2
cmp dword [ebp - 0x28], 0x291e
jge 0x44846c
mov edx, 0xacd0d4
mov ecx, 0xae6c18
call fcn.0043006e
or dword [ebp - 4], 0xffffffff
jmp 0x448495
mov dword [ebp - 0x30], 0x8c7fffaa
mov dword [ebp - 0x20], 0xf8abff5e
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x28], 0xb1f05996
mov dword [ebp - 0x38], 0x647cf284
push 2
lea ecx, [ebp - 0xb0]
call fcn.0042e3fc
mov dword [ebp - 0x24], 0xf6e88f3c
push 4
lea ecx, [ebp - 0xa4]
call fcn.0042e3fc
mov dword [ebp - 0x14], ebx
jmp 0x4484f1
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xb0]
mov dword [eax + ecx*4], 0x8b3176a1
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x4484de
mov dword [ebp - 0x14], ebx
jmp 0x44850f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xa4]
mov dword [eax + ecx*4], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x4484fc
mov dword [ebp - 0x14], ebx
jmp 0x4485c1
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x20], ebx
jmp 0x448533
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x80], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x448529
cmp dword [ebp - 0x14], ebx
jne 0x4485a9
mov eax, dword [ebp - 0x78]
mov ecx, 0xd610b5fc
sub ecx, eax
xor eax, eax
test ecx, ecx
setg al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x34]
sub ecx, eax
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setg dl
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
setle cl
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setg dl
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
cmp ecx, 0x2b8e
setne dl
mov ecx, dword [ebp - 0x7c]
add ecx, edx
mov eax, dword [ebp - 0x7c]
xor edx, edx
cmp ecx, eax
setne dl
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0x30]
mov ecx, ebx
je 0x4485ab
mov ecx, esi
push 7
pop eax
sub eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x34], ebx
jne 0x4485cb
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffffd
je 0x44851d
imul eax, dword [ebp - 0x20], 5
xor ecx, ecx
cmp eax, 0xeaa4
setle cl
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff9
add eax, ecx
xor ecx, ecx
cmp eax, 0xc3cc
setle cl
cmp ecx, dword [ebp - 0x28]
je 0x4485f3
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
imul edx, dword [ebp - 0x20]
sub edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
setne cl
imul ecx, dword [ebp - 0x38]
test ecx, ecx
jne 0x448619
cmp dword [ebp - 0x38], ebx
mov eax, ebx
je 0x44861b
mov eax, esi
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x20]
dec edx
neg edx
sbb edx, edx
neg edx
sub edx, dword [ebp - 0x14]
neg edx
sbb edx, edx
inc edx
mov eax, dword [ebp - 0xb0]
imul edx, dword [eax + 4]
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
sete cl
mov eax, dword [ebp - 0x28]
xor edx, edx
cmp ecx, eax
setl dl
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp dword [ebp - 0x2c], eax
setne cl
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp eax, ecx
setge dl
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0xa4]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x30]
xor ecx, ecx
cmp eax, edx
setne cl
sub ecx, edx
mov dword [ebp - 0x20], ecx
lea ecx, [ebp - 0xa4]
call fcn.0042e4ce
lea ecx, [ebp - 0xb0]
call fcn.0042e4ce
mov dword [ebp - 0x34], 3
movdqa xmm0, xmmword [0xad5e70]
movdqu xmmword [ebp - 0xfc], xmm0
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
push dword [ebp - 0x4c]
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0xfc]
push eax
push ebx
lea ecx, [ebp - 0x6c]
call fcn.004305c6
mov dword [ebp - 0x18], ebx
jmp 0x4486f6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xec], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4486e9
mov edi, dword [ebp - 0x6c]
mov dword [edi + 8], ebx
mov dword [ebp - 0x18], 0x182eac45
mov dword [ebp - 0x18], ebx
jmp 0x448728
cmp byte [ebp - 0x19], 0
je 0x448725
push esi
push ebx
push 0x166d
push 0x239
call dword [0xaea53c]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
mov byte [ebp - 0x19], bl
jle 0x44870d
cmp byte [ebp - 0x19], 0
je 0x44874b
push ebx
push 0x1a41
push ebx
push ebx
push 0x1e43
push 0x7a
call dword [0xaea444]
inc dword [edi + 8]
cmp dword [edi + 8], 0
jle 0x448701
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x448764
push ebx
call dword [0xaea058]
lea ecx, [ebp - 0x6c]
call fcn.0042e4ce
push esi
lea ecx, [ebp - 0x98]
call fcn.0042e3fc
mov dword [ebp - 0x40], 4
mov dword [ebp - 0x18], ebx
jmp 0x448797
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x98]
mov dword [eax + ecx*4], 0x48bbca63
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x448784
mov ecx, dword [ebp - 0x98]
mov dword [ecx], ebx
cmp dword [ecx], 0x13
jg 0x448874
mov dword [ebp - 0x2c], 0xa62
mov dword [ebp - 0x24], 0x7eef
cmp dword [ebp - 0x24], 0x7fa0
jle 0x4487ff
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x2c], ebx
mov eax, ebx
xor eax, edi
or eax, esi
cdq
push edx
push eax
mov ecx, 0xae6c18
call fcn.0042e2b8
inc ebx
cmp ebx, 0x7291
jl 0x4487cb
inc edi
cmp edi, 0x15d5
push 0
pop ebx
jl 0x4487c8
inc esi
cmp esi, 0x72cd
jl 0x4487c6
xor esi, esi
inc esi
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x44881a
push 0x1f2e
push ebx
push ebx
push 0x10b7
call dword [0xaea120]
mov dword [ebp - 4], 4
cmp dword [ebp - 0x24], 0x7b40
jge 0x448839
mov edx, 0xacd120
mov ecx, 0xae6c18
call fcn.0043006e
or dword [ebp - 4], 0xffffffff
jmp 0x448862
mov ecx, dword [ebp - 0x98]
mov eax, dword [ecx]
mov dword [ebp - 0x2c], eax
inc dword [ecx]
jmp 0x4487a4
lea ecx, [ebp - 0x98]
call fcn.0042e4ce
mov dword [ebp - 0x40], 0xfff6
mov dword [ebp - 0x14], 0xfffffffa
mov dword [ebp - 0x34], 0xd52
cmp dword [ebp - 0x34], 0xd81
jle 0x4488de
mov dword [ebp - 0x28], ebx
mov esi, ebx
mov dword [ebp - 0x24], 0x7299
mov edi, ebx
mov eax, esi
xor eax, edi
cdq
push edx
push eax
mov ecx, 0xae6c18
call fcn.0042e2b8
inc edi
cmp edi, 0x6693
jl 0x4488ab
mov edi, dword [ebp - 0x28]
add esi, edi
dec dword [ebp - 0x24]
jne 0x4488a9
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x43d
jl 0x4488a0
xor esi, esi
inc esi
push 3
lea ecx, [ebp - 0xbc]
call fcn.0042e3fc
mov dword [ebp - 4], 6
cmp dword [ebp - 0x34], 0x9b4
jge 0x44890a
mov edx, 0xacd164
mov ecx, 0xae6c18
call fcn.0043006e
or dword [ebp - 4], 0xffffffff
jmp 0x448933
mov dword [ebp - 0x14], ebx
jmp 0x448949
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xdc], 0xf8a6ebbf
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x448938
mov dword [ebp - 0x14], ebx
jmp 0x448967
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xbc]
mov dword [eax + ecx*4], 0xffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x448954
mov dword [ebp - 0x14], ebx
jmp 0x448a71
mov dword [ebp - 0x34], 0xfffffff7
mov dword [ebp - 0x24], 0xafb5d1cb
cmp dword [ebp - 0x34], 0xfffffffb
jae 0x448a69
push esi
lea ecx, [ebp - 0x8c]
call fcn.0042e3fc
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x18], ebx
jmp 0x4489b4
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x8c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x4489a5
mov eax, dword [ebp - 0x8c]
xor ecx, ecx
cmp dword [eax], ecx
setne cl
mov dword [ebp - 0x28], ecx
cmp dword [eax], 0
jne 0x4489d5
cmp dword [ebp - 0x14], ebx
mov eax, ebx
je 0x4489d7
mov eax, esi
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp eax, 0x3b4709ba
setne cl
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setle dl
dec edx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
setne cl
sub ecx, 0xfffe
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x2c], ecx
xor ecx, ecx
cmp dword [ebp - 0x2c], 0xfd77
setl cl
mov eax, dword [ebp - 0x34]
xor edx, edx
cmp ecx, eax
setle dl
mov eax, dword [ebp - 0x8c]
imul edx, dword [eax]
xor eax, eax
test edx, edx
setg al
mov ecx, dword [ebp - 0x28]
add ecx, 0xacb6
add eax, ecx
xor edx, edx
cmp eax, 0xfffffffc
setle dl
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0xd8], ecx
lea ecx, [ebp - 0x8c]
call fcn.0042e4ce
jmp 0x448a6e
cmp dword [ebp - 0x34], ebx
jne 0x448a7b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x16
jg 0x448975
mov eax, dword [ebp - 0xbc]
inc dword [eax + 8]
lea ecx, [ebp - 0xbc]
call fcn.0042e4ce
mov dword [ebp - 0x18], ebx
jmp 0x448aa5
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x11c], 0xa2768935
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x448a94
mov dword [ebp - 0x34], 0xffffffe3
cmp dword [ebp - 0x34], 0xb
je 0x449278
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x30], 0x161f
cmp dword [ebp - 0x30], 0x17c5
jle 0x448b3a
mov eax, ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x28], 0x681c
mov edi, ebx
mov dword [ebp - 0x24], ebx
mov esi, ebx
add eax, edi
mov dword [ebp - 0x2c], eax
mov edi, eax
mov eax, edi
and eax, esi
cdq
push edx
push eax
mov ecx, 0xae6c18
call fcn.0042e2b8
inc esi
cmp esi, 0xb7d
jl 0x448aec
mov edi, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x3c4b
mov eax, dword [ebp - 0x38]
jl 0x448ae3
dec eax
mov dword [ebp - 0x38], eax
dec dword [ebp - 0x28]
jne 0x448ade
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x2e02
jl 0x448ad4
push ebx
push ebx
call dword [0xaea288]
xor esi, esi
inc esi
mov dword [ebp - 0x20], 0xfffffff7
mov dword [ebp - 4], 8
cmp dword [ebp - 0x30], 0x1337
jge 0x448b60
mov edx, 0xacd1ac
mov ecx, 0xae6c18
call fcn.0043006e
or dword [ebp - 4], 0xffffffff
jmp 0x448b89
mov dword [ebp - 0x18], ebx
jmp 0x448b9c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x54], 0xfffffffe
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x448b8e
cmp dword [ebp - 0x14], ebx
jne 0x448bf8
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov ecx, 0x54e5
sub ecx, eax
mov eax, dword [ebp - 0x14]
xor edx, edx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x14]
neg edx
sbb edx, edx
inc edx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x14]
mov ecx, ebx
jle 0x448bfa
mov ecx, esi
mov eax, dword [ebp - 0x14]
sub ecx, eax
sub ecx, dword [ebp - 0x14]
cmp ecx, dword [ebp - 0x14]
jg 0x448d1e
mov dword [ebp - 0x2c], 0xb7a89715
mov dword [ebp - 0x18], ebx
jmp 0x448c25
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x48], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x448c17
cmp dword [ebp - 0x44], ebx
je 0x448c37
cmp dword [ebp - 0x48], ebx
mov edi, esi
jne 0x448c39
mov edi, ebx
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x50]
xor edx, edx
cmp eax, ecx
setge dl
xor ecx, ecx
cmp edx, edi
setg cl
mov eax, dword [ebp - 0x50]
add ecx, eax
mov eax, dword [ebp - 0x48]
xor edx, edx
cmp eax, ecx
setl dl
cmp edx, 0x3c94
je 0x448c7c
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x448d2b
call dword [fcn.00aea31c]
jmp 0x448d2b
mov dword [ebp - 0x18], ebx
jmp 0x448c8f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x60], 0xffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x448c81
mov eax, dword [ebp - 0x44]
neg eax
sbb eax, eax
inc eax
cmp eax, 0xfffffffc
jne 0x448ca9
cmp dword [ebp - 0x58], ebx
mov ecx, ebx
je 0x448cab
mov ecx, esi
xor eax, eax
cmp ecx, 0xfffffffc
setge al
xor ecx, ecx
cmp ecx, eax
sbb ecx, ecx
neg ecx
mov eax, dword [ebp - 0x60]
sub ecx, eax
je 0x448cc9
cmp dword [ebp - 0x48], ebx
mov edx, esi
jne 0x448ccb
mov edx, ebx
mov eax, dword [ebp - 0x60]
xor ecx, ecx
cmp edx, eax
setl cl
test ecx, ecx
jne 0x448ce0
cmp dword [ebp - 0x48], ebx
mov eax, esi
jne 0x448ce2
mov eax, ebx
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x58]
neg eax
jne 0x448cf9
cmp dword [ebp - 0x58], ebx
mov eax, ebx
je 0x448cfb
mov eax, esi
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x14], ebx
jmp 0x448d17
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x448d14
push ebx
push ebx
call dword [fcn.00aea330]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x448d03
jmp 0x448d2b
mov dword [ebp - 0x2c], 0xddca65d2
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x14], ebx
jmp 0x448d53
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x20], ebx
jmp 0x448d4b
inc dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x54], ebx
jne 0x448d50
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x448d3c
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x448d30
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x2c], 0x516
cmp dword [ebp - 0x2c], 0x84e
jle 0x448dd2
mov eax, ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x28], 0x6fed
mov edi, ebx
mov dword [ebp - 0x24], ebx
mov esi, ebx
add eax, edi
mov dword [ebp - 0x30], eax
mov edi, eax
mov eax, edi
and eax, esi
cdq
push edx
push eax
mov ecx, 0xae6c18
call fcn.0042e2b8
inc esi
cmp esi, 0x2336
jl 0x448d8c
mov edi, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x2f61
mov eax, dword [ebp - 0x38]
jl 0x448d83
dec eax
mov dword [ebp - 0x38], eax
dec dword [ebp - 0x28]
jne 0x448d7e
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x673f
jl 0x448d74
xor esi, esi
inc esi
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x14], 0x2fe3
cmp dword [ebp - 0x14], 0x3144
jle 0x448e71
mov edx, ebx
mov dword [ebp - 0x38], ebx
mov eax, ebx
mov dword [ebp - 0x18], ebx
mov edi, ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x30], ebx
lea ecx, [edi + eax]
sar edx, cl
mov dword [ebp - 0x3c], edx
mov edi, ebx
mov eax, edi
xor eax, edx
cdq
push edx
push eax
lea ecx, [ebp - 0x14c]
call fcn.00401a8e
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x448e25
mov eax, dword [eax]
push eax
call fcn.0049dfa7
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x14c]
call fcn.0042e7d8
inc edi
cmp edi, 0x65d6
mov edx, dword [ebp - 0x3c]
jl 0x448e09
mov edi, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x774b
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x38]
jl 0x448dfc
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x17d7
jl 0x448df7
inc edx
mov dword [ebp - 0x38], edx
cmp edx, 0x51ef
jl 0x448df2
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 4], 0xa
cmp dword [ebp - 0x14], 0x2dca
jge 0x448e93
push 0xacd200
call fcn.0049dfa7
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x448ebc
mov dword [ebp - 0x38], 0x8af8716b
mov dword [ebp - 0x24], 0xfffffffe
mov dword [ebp - 0x24], 0x51ef9953
push 2
lea ecx, [ebp - 0xd4]
call fcn.0042e3fc
mov dword [ebp - 0x3c], 0x57b1a094
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
jmp 0x448efb
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x74], 0xfffffff8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x448eed
mov dword [ebp - 0x14], ebx
jmp 0x448f19
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xd4]
mov dword [eax + ecx*4], 0x548aab56
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x448f06
mov eax, dword [ebp - 0x74]
xor ecx, ecx
cmp eax, 0xffff
setne cl
cmp dword [ebp - 0x74], ecx
jne 0x448f4f
mov dword [ebp - 0x70], esi
mov eax, dword [ebp - 0x30]
xor edx, edx
test eax, eax
setns dl
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp edx, eax
setge cl
cmp ecx, dword [ebp - 0x38]
mov edx, esi
jle 0x448f51
mov edx, ebx
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp edx, eax
sete cl
mov eax, dword [ebp - 0x30]
xor edx, edx
cmp ecx, eax
setl dl
mov eax, dword [ebp - 0x28]
inc dword [ebp - 0x28]
cmp eax, edx
mov eax, esi
cmovg eax, ebx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xd4]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x3c], 0xadaa237f
inc dword [ebp - 0x18]
lea ecx, [ebp - 0xd4]
call fcn.0042e4ce
mov dword [ebp - 4], 0xc
cmp dword [ebp - 0x2c], 0x1bd
jge 0x448fc7
mov edx, 0xacd1e4
mov ecx, 0xae6c18
call fcn.0043006e
or dword [ebp - 4], 0xffffffff
jmp 0x448ff0
mov dword [ebp - 0x2c], 0xde6f885e
push 2
lea ecx, [ebp - 0xe8]
call fcn.0042e3fc
mov dword [ebp - 0x18], 0xdf1febae
mov dword [ebp - 0x18], ebx
jmp 0x449023
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xe8]
mov dword [eax + ecx*4], 0xfffffffb
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x449010
mov dword [ebp - 0x18], ebx
jmp 0x44903f
mov dword [ebp - 0x3c], 0xdcb3
mov dword [ebp - 0x3c], 0xccce1e2c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jle 0x44902e
lea ecx, [ebp - 0xe8]
call fcn.0042e4ce
mov dword [ebp - 0x3c], 0xef51ae9a
inc dword [ebp - 0x20]
mov dword [ebp - 0x14], 6
mov dword [ebp - 0x18], ebx
jmp 0x449076
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xc8], 0xfffffffb
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x449065
mov dword [ebp - 0x24], 0x6d6f
cmp dword [ebp - 0x24], 0x6de5
jle 0x4490f9
mov eax, ebx
mov dword [ebp - 0x28], ebx
mov edi, ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x3c], ebx
mov ecx, edi
shl eax, cl
mov dword [ebp - 0x38], eax
mov edi, ebx
or eax, edi
cdq
push edx
push eax
lea ecx, [ebp - 0x164]
call fcn.00401a8e
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x4490bc
mov eax, dword [eax]
push eax
call fcn.0049dfa7
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x164]
call fcn.0042e7d8
inc edi
cmp edi, 0x4466
mov eax, dword [ebp - 0x38]
jl 0x4490a2
mov edi, dword [ebp - 0x2c]
inc edi
mov dword [ebp - 0x2c], edi
cmp edi, 0x2ba8
mov eax, dword [ebp - 0x28]
jl 0x449096
inc eax
mov dword [ebp - 0x28], eax
cmp eax, 0x5e37
jl 0x449091
mov dword [ebp - 0x14], ebx
jmp 0x44910b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc8], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x4490fe
mov dword [ebp - 4], 0xe
cmp dword [ebp - 0x24], 0x6b74
jge 0x44912c
push 0xacd254
call fcn.0049dfa7
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x449155
mov dword [ebp - 0x28], 0x605a
cmp dword [ebp - 0x28], 0x617e
jle 0x4491ba
push 0x1428
call dword [0xaea418]
mov esi, ebx
mov dword [ebp - 0x24], ebx
mov edi, ebx
mov dword [ebp - 0x2c], ebx
mov eax, esi
cdq
idiv edi
mov esi, edx
mov edi, 0x2041
mov eax, esi
cdq
push edx
push eax
mov ecx, 0xae6c18
call fcn.0042e2b8
dec esi
dec edi
jne 0x449186
mov edi, dword [ebp - 0x2c]
inc edi
mov dword [ebp - 0x2c], edi
cmp edi, 0x360f
mov esi, dword [ebp - 0x24]
jl 0x44917a
inc esi
mov dword [ebp - 0x24], esi
cmp esi, 0x5cd9
jl 0x449175
xor esi, esi
inc esi
mov dword [ebp - 0x14], 7
jmp 0x4491dd
mov dword [ebp - 0x3c], 0x7822e6e
mov eax, dword [ebp - 0xc0]
imul eax, dword [ebp - 0xc4]
mov dword [ebp - 0x3c], eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x15
jge 0x4491c3
mov dword [ebp - 4], 0x10
cmp dword [ebp - 0x28], 0x5cb7
jge 0x449202
mov edx, 0xacd2d0
mov ecx, 0xae6c18
call fcn.0043006e
or dword [ebp - 4], 0xffffffff
jmp 0x44922b
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
neg eax
sbb eax, eax
inc eax
neg eax
cmp eax, 0xfffffff7
jle 0x44924d
mov eax, dword [ebp - 0x40]
mov edx, esi
jmp 0x44924f
mov edx, ebx
mov eax, dword [ebp - 0x20]
sub edx, eax
add edx, 0x42f88d96
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
setle cl
mov eax, dword [ebp - 0x20]
sub eax, ecx
imul eax, dword [ebp - 0x20]
mov dword [ebp - 0x3c], eax
inc dword [ebp - 0x34]
jmp 0x448ab2
mov dword [ebp - 0x14], 7
mov dword [ebp - 0x34], 6
mov dword [ebp - 0x40], 0x67d50f82
mov dword [ebp - 0x18], ebx
jmp 0x4492a0
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x4c], 0x90515466
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x449292
mov dword [ebp - 0x14], 0xfffffff6
jmp 0x4492c2
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x4492bf
push ebx
push ebx
call dword [0xaea348]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffea
jle 0x4492ae
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x40], 0xa927213e
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x14]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x34]
xor ecx, ecx
cmp eax, 0xfff891b0
setle cl
add ecx, dword [ebp - 0x34]
add ecx, dword [ebp - 0x14]
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret