Function at 0x100237ac
Capabilities:
Encrypt data using speck

Disassembly:
mov eax, 0x10064cee
call fcn.10063950
sub esp, 0x6a8
push ebx
mov dword [ebp - 0x1c], 0x3ae35568
xor ebx, ebx
push esi
mov dword [ebp - 0x1c], 0xffffffee
cmp dword [ebp - 0x1c], 0xb
push edi
mov dword [ebp - 0x10], esp
jge 0x100238aa
xor esi, esi
inc esi
push 2
lea ecx, [ebp - 0x1c8]
call fcn.10004e2c
mov dword [ebp - 4], ebx
mov dword [ebp - 0xd0], ebx
jmp 0x1002380e
mov eax, dword [ebp - 0xd0]
mov dword [ebp + eax*4 - 0x60c], 0x3eb905d0
inc dword [ebp - 0xd0]
cmp dword [ebp - 0xd0], 3
jl 0x100237f7
push ecx
push ecx
push 0x1cdf
lea eax, [ebp - 0x1c8]
push eax
lea eax, [ebp - 0xd0]
push eax
push ecx
push esi
push 0x6990
call fcn.1001fd5e
mov edi, dword [ebp - 0x1c8]
add esp, 0x20
mov dword [edi], ebx
lea eax, [ebp - 0x92]
mov byte [ebp - 0x92], bl
push eax
push 0x7192
push esi
push ebx
push 0x14ed
push ebx
push 0x2411
push 0x3e2c
mov edx, 0x702a
mov ecx, 0x38c0
call fcn.100217ca
add esp, 0x20
inc dword [edi]
cmp dword [edi], 2
jle 0x10023843
or dword [ebp - 4], 0xffffffff
push edi
call fcn.1004d139
mov dword [ebp - 0x1c0], ebx
mov dword [ebp - 0x1c4], ebx
mov dword [ebp - 0x1c8], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xb
pop ecx
jl 0x100237df
mov dword [ebp - 0x20], 0xc68ec0ae
xor eax, eax
mov dword [ebp - 0x24], 0xf47a6de
inc eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x1c], 3
mov dword [ebp - 0x30], 0xa6f44401
mov dword [ebp - 0xfc], 0xffffffff
mov dword [ebp - 0x41c], 0xfffffffc
mov dword [ebp - 0x418], 0xfffffffc
mov dword [ebp - 0x414], 0xfffffffc
mov dword [ebp - 0x410], 0xfffffffc
mov dword [ebp - 0x140], 0x299e885d
mov dword [ebp - 0x40], 0x3674
mov dword [ebp - 0x58], 0x1ea3
cmp dword [ebp - 0x58], 0x12c5
jge 0x100239e2
mov dword [ebp - 0x4f0], 0xf
mov dword [ebp - 0x4f4], ebx
mov byte [ebp - 0x504], bl
mov dword [ebp - 4], eax
mov dword [ebp - 0x3cc], 0xf
mov dword [ebp - 0x3d0], ebx
mov byte [ebp - 0x3e0], bl
lea edx, [ebp - 0x504]
mov byte [ebp - 4], 2
mov ecx, 0x10080ed8
call fcn.100286d4
lea edx, [ebp - 0x3e0]
mov ecx, eax
call fcn.100286d4
mov edx, dword [ebp - 0x3d0]
mov esi, ebx
mov eax, edx
neg eax
cmp dword [ebp - 0x3cc], 0x10
lea ecx, [ebp - 0x3e0]
push edx
cmovae ecx, dword [ebp - 0x3e0]
add eax, edx
push eax
push ecx
lea ecx, [ebp - 0x504]
call fcn.10017332
cmp eax, 0xffffffff
je 0x100239b4
mov edx, dword [ebp - 0x3d0]
inc esi
jmp 0x10023982
push esi
call fcn.10028289
push eax
call fcn.100072e7
pop ecx
xor esi, esi
lea ecx, [ebp - 0x3e0]
push ebx
inc esi
push esi
call fcn.100052fb
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x504]
push ebx
push esi
call fcn.100052fb
cmp dword [ebp - 0x40], 0x381f
jle 0x10023a3a
mov edi, ebx
mov esi, ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x38], 0x73cd
mov ecx, ebx
mov eax, edi
shl eax, cl
mov ecx, 0x10080db8
cdq
push edx
push eax
call fcn.10004c02
add ebx, esi
dec dword [ebp - 0x38]
jne 0x100239f9
inc esi
push 0
pop ebx
cmp esi, 0x3028
jl 0x100239ef
inc edi
cmp edi, 0x4ede
jl 0x100239ed
push 0x1db7
push ebx
push 0x25e5
push ebx
call dword [sym.imp.USER32.dll_LoadStringA]
mov dword [ebp - 0x28], 0xf407293c
mov dword [ebp - 4], 3
cmp dword [ebp - 0x40], 0x3409
jge 0x10023a60
mov edx, str.mjpo_plxsr_monhovw_ymewth
mov ecx, 0x10080db8
call fcn.10007110
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x30], 0x1295
mov dword [ebp - 0x48], 0x6113
mov dword [ebp - 0x20], 0xfffffff5
jmp 0x10023ad0
mov dword [ebp - 0x30], 0x6cce57bf
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x38], 0x3e2f7c62
mov dword [ebp - 0x1c], ebx
jmp 0x10023ac4
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x648], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10023ab3
dec dword [ebp - 0x38]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffffb
jl 0x10023a9d
push 8
pop edi
mov dword [ebp - 0x1c], edi
jmp 0x10023c9b
mov dword [ebp - 0x58], ebx
lea ecx, [ebp - 0x28c]
push 4
call fcn.10004e2c
mov dword [ebp - 4], 5
lea ecx, [ebp - 0x280]
mov dword [ebp - 0x30], 0x98dc509c
mov dword [ebp - 0x17c], 0x187b35f1
mov dword [ebp - 0x40], 9
push 3
call fcn.10004e2c
mov byte [ebp - 4], 6
xor edx, edx
inc edx
mov dword [ebp - 0xa0], edx
mov dword [ebp - 0x3b8], 0x499e98c5
mov dword [ebp - 0x38], 0x267a
mov dword [ebp - 0x18], ebx
jmp 0x10023b53
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28c]
mov dword [eax + ecx*4], 0xfffffffa
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10023b40
mov dword [ebp - 0x18], ebx
jmp 0x10023b6d
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x280]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10023b5e
mov dword [ebp - 0x18], ebx
jmp 0x10023b85
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x3f4], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10023b78
push 0x47b4
sub esp, 0x18
lea eax, [ebp - 0x3b8]
push ebx
push eax
push ecx
mov ecx, 0x5f12
call fcn.10020819
mov eax, dword [ebp - 0x28]
add esp, 0x28
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x41c]
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x20], ebx
jne 0x10023bd5
cmp dword [ebp - 0x140], ebx
jne 0x10023bd5
xor edx, edx
mov ecx, ebx
inc edx
jmp 0x10023bda
xor edx, edx
inc edx
mov ecx, edx
mov eax, dword [ebp - 0xfc]
sub ecx, eax
mov dword [ebp - 0x410], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x280]
cmp dword [eax], 0xd872
jl 0x10023bfc
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
sub ecx, 0x63f4
neg ecx
sbb ecx, ecx
inc ecx
lea eax, [eax + ecx*2]
test eax, eax
je 0x10023c2d
mov esi, edx
cmp dword [ebp - 0x28], ebx
jne 0x10023c2f
mov esi, ebx
mov ecx, dword [ebp - 0x28c]
mov eax, dword [ecx + 8]
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x3f0]
add eax, esi
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x20]
push dword [ebp - 0x280]
mov dword [ebp - 0x3f0], eax
call fcn.1004d139
or dword [ebp - 4], 0xffffffff
pop ecx
push dword [ebp - 0x28c]
mov dword [ebp - 0x280], ebx
mov dword [ebp - 0x27c], ebx
mov dword [ebp - 0x278], ebx
call fcn.1004d139
mov dword [ebp - 0x28c], ebx
mov dword [ebp - 0x288], ebx
mov dword [ebp - 0x284], ebx
dec dword [ebp - 0x1c]
pop ecx
cmp dword [ebp - 0x1c], 0xfffffff0
jge 0x10023ae1
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x20], 0x40f2
mov dword [ebp - 0x164], 0x2e889ec
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x34], 0x8cbd6cd5
mov dword [ebp - 0x18], ebx
jmp 0x10023cdd
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x534], 6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10023ccc
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x164]
cmp eax, dword [ebp - 0x20]
jne 0x10023cf4
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x164]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
xor eax, eax
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
je 0x10023d13
cmp dword [ebp - 0x20], ebx
jne 0x10023d15
mov eax, ebx
cmp eax, dword [ebp - 0x1c]
jg 0x10023d1f
cmp dword [ebp - 0x24], ebx
je 0x10023d22
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
test eax, eax
mov dword [ebp - 0x530], eax
mov eax, dword [ebp - 0x20]
sete cl
imul ecx, ecx, 0x952e
xor edx, edx
push 0x656a
push 0x47b6
push ebx
cmp ecx, eax
lea eax, [ebp - 0x164]
push eax
setg dl
mov ecx, 0x5ae2
xor esi, esi
add edx, 3
inc esi
mov dword [ebp - 0x34], edx
push esi
push 0x5be8
xor dl, dl
call fcn.1001e696
mov ecx, dword [0x106bfb08]
xor eax, eax
inc eax
add esp, 0x18
test al, cl
jne 0x10023db9
or ecx, eax
mov dword [0x106bfb08], ecx
mov dword [ebp - 4], 7
mov dword [0x106bfb10], ebx
mov dword [0x106bfb14], ebx
call fcn.10028696
push 0x100659c2
mov dword [0x106bfb10], eax
call fcn.1004cf42
or dword [ebp - 4], 0xffffffff
pop ecx
mov dword [ebp - 0x1c], 0xc7c8a6b9
lea ecx, [ebp - 0x2a4]
push 4
call fcn.10004e2c
mov dword [ebp - 4], edi
lea eax, [ebp - 0xe0]
push 0x7389
mov dword [ebp - 0x24], 0x8a9017ca
lea edx, [ebp - 0x2a4]
push eax
mov dword [ebp - 0x34], 0x795e
xor esi, esi
mov dword [ebp - 0x30], 0x1b16eb2d
inc esi
push ebx
mov dword [ebp - 0x30], 0x5ee6d54e
xor cl, cl
mov dword [ebp - 0x1ec], 0x74307976
push esi
call fcn.1002198c
xor edx, edx
mov dword [ebp - 0xe0], ebx
add esp, 0x10
inc edx
jmp 0x10023e35
mov eax, dword [ebp - 0xe0]
mov dword [ebp + eax*4 - 0x198], edx
inc dword [ebp - 0xe0]
cmp dword [ebp - 0xe0], edx
jl 0x10023e22
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x2a4]
neg eax
push 0
sbb eax, eax
inc eax
mov ecx, dword [esi + 4]
pop eax
sets al
sub eax, ecx
neg eax
sbb eax, eax
inc eax
imul eax, ecx
cmp dword [ebp - 0x1c], eax
jne 0x10023e73
mov eax, edx
cmp dword [esi + 4], ebx
jne 0x10023e75
mov eax, ebx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], ebx
jne 0x10023e84
mov eax, ebx
cmp dword [ebp - 0x34], ebx
je 0x10023e86
mov eax, edx
cmp dword [ebp - 0x1c], eax
jle 0x10023e92
mov ecx, ebx
cmp dword [ebp - 0x24], ebx
je 0x10023e94
mov ecx, edx
mov eax, dword [ebp - 0x198]
sub ecx, eax
add ecx, 0xa74a
je 0x10023fc5
mov dword [ebp - 0x35c], edx
mov dword [ebp - 0x30], 0xfffffffe
mov dword [ebp - 0x30], 0x60d64c9d
mov dword [ebp - 0x40], 0x64a6
cmp dword [ebp - 0x40], 0x6792
jle 0x10023f23
mov eax, ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], 0x5891
mov esi, ebx
mov edi, ebx
mov ebx, dword [ebp - 0x2c]
mov eax, ebx
mov ecx, 0x10080db8
or eax, edi
or eax, esi
cdq
push edx
push eax
call fcn.10004c02
inc edi
cmp edi, 0x6424
jl 0x10023ee2
inc esi
push 0
pop ebx
cmp esi, 0x3ed2
jl 0x10023edd
dec dword [ebp - 0x2c]
dec dword [ebp - 0x28]
jne 0x10023edb
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp eax, 0x5380
jl 0x10023ed1
push 8
pop edi
mov dword [ebp - 0x30], 0xfffffff7
mov byte [ebp - 4], 9
cmp dword [ebp - 0x40], 0x63db
jge 0x10023f67
mov edx, str.tewnv_otngti_zfj
mov ecx, 0x10080db8
call fcn.10007110
jmp 0x10023f67
push 0x6917
xor eax, eax
mov dword [ebp - 4], edi
inc eax
lea edx, [ebp - 0x35c]
push eax
push eax
push 0x3058
push 0x5390
push 0x65b6
push 0x21b3
push 0xc61
push ebx
push 0x155c
mov ecx, 0x51ea
mov dword [ebp - 0x30], eax
call fcn.10020d10
add esp, 0x28
mov dl, 1
push 0x54a1
push ecx
push ecx
lea ecx, [ebp - 0x1ec]
call fcn.1001ee83
add esp, 0xc
jmp 0x100240f1
mov dword [ebp - 0x28], 0xcb7be74f
mov dword [ebp - 0x20], 0x7bc41bbb
mov dword [ebp - 0x2c], 0xf0d602ff
cmp dword [ebp - 0x20], ebx
je 0x10023fe5
mov eax, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x20]
xor esi, esi
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x20]
inc esi
cmp eax, esi
mov eax, dword [ebp - 0x2c]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
add ecx, dword [ebp - 0x20]
je 0x10024011
cmp dword [ebp - 0x2c], ebx
je 0x10024011
xor edx, edx
inc edx
jmp 0x10024013
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
test eax, eax
sets cl
mov dword [ebp - 0x28], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x198]
cmp edx, eax
mov eax, dword [ebp - 0x28]
setg cl
xor edx, edx
cmp ecx, 0xffffffff
setl dl
xor ecx, ecx
cmp eax, edx
setg cl
cmp ecx, dword [ebp - 0x2c]
jg 0x100240b1
push 3
lea ecx, [ebp - 0x308]
call fcn.10004e2c
lea eax, [ebp - 0x33c]
mov byte [ebp - 4], 0xb
push eax
push 0x6c1b
xor eax, eax
lea ecx, [ebp - 0x308]
inc eax
mov edx, 0x3e96
push eax
push ecx
push eax
push 0x6e30
xor cl, cl
call fcn.1001edc8
push 0x1228
xor dl, dl
call fcn.100212a3
mov eax, dword [ebp - 0x308]
add esp, 0x1c
dec dword [eax + 8]
push eax
call fcn.1004d139
pop ecx
mov dword [ebp - 0x308], ebx
mov dword [ebp - 0x304], ebx
mov dword [ebp - 0x300], ebx
jmp 0x100240f1
push ecx
push 0xda9
push 0x7694
push ecx
mov dword [ebp - 0x398], 0x573c
lea ecx, [ebp - 0x398]
push ebx
call fcn.10023576
add esp, 0x10
mov byte [ebp - 0x7f], bl
lea eax, [ebp - 0x7f]
mov edx, 0x2e2b
push eax
push 0x171f
push ebx
push ecx
call fcn.1001e199
add esp, 0x14
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x2a4]
call fcn.1004d139
cmp byte [0x106be689], 0
pop ecx
mov dword [ebp - 0x2a4], ebx
mov dword [ebp - 0x2a0], ebx
mov dword [ebp - 0x29c], ebx
jne 0x10027ce0
mov dl, 1
call fcn.1001fdba
push 1
push ecx
push ecx
push 0x717c
push 0x106be689
mov ecx, 0x564e
call fcn.100231bc
mov dword [ebp - 0x20], 0x9d43467
add esp, 0x14
mov dword [ebp - 0x18], 0x1c9b
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x34], 0x30fc353
mov dword [ebp - 0x28], 0x91b05987
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x28], 0x760fc5c2
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x20], ebx
je 0x100241d7
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, 0xfffffff7
mov eax, dword [ebp - 0x18]
setle cl
xor edx, edx
imul ecx, ecx, 0x82ba
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
mov dword [ebp - 0x2c], ecx
inc edx
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x20]
cmp eax, edx
setl cl
mov dword [ebp - 0x28], ecx
mov ecx, 0xb481d3ef
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x18]
cmp ecx, eax
sbb eax, eax
neg eax
add eax, dword [ebp - 0x20]
mov dword [ebp - 0x34], eax
jne 0x100241d9
mov edx, ebx
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x20]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setge cl
mov dword [ebp - 0x34], ecx
xor ecx, ecx
cmp dword [ebp - 0x34], eax
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x18]
neg eax
sbb eax, eax
inc eax
imul eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x28], ebx
je 0x10024230
cmp dword [ebp - 0x18], ebx
je 0x10024230
xor ecx, ecx
inc ecx
jmp 0x10024232
mov ecx, ebx
xor eax, eax
cmp ecx, edi
setle al
cmp eax, dword [ebp - 0x18]
jle 0x10024277
push ecx
push ecx
push 0x2aa5
push 0x1c9f
push 0x22b1
push 0x2753
push 0x6d77
lea eax, [ebp - 0x94]
mov byte [ebp - 0x94], bl
push 0x3074
push eax
xor dl, dl
call fcn.1001fc12
add esp, 0x24
jmp 0x100242ad
mov dword [ebp - 0x18], 0xb
cmp dword [ebp - 0x18], 0x1c
je 0x100242ad
xor ebx, ebx
inc ebx
push ebx
push 0x71f0
push 0x3289
push ebx
mov edx, 0x1d37
mov cl, bl
call fcn.100201b8
add esp, 0x10
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x1c
jne 0x10024287
xor ebx, ebx
push dword [ebp - 0x33c]
movdqa xmm0, xmmword [0x100731f0]
lea eax, [ebp - 0x5ac]
push eax
lea eax, [ebp - 0x5bc]
mov dword [ebp - 0x110], 0x1007daf0
push eax
push ebx
lea ecx, [ebp - 0x1d8]
mov dword [ebp - 0x1d8], ebx
movdqu xmmword [ebp - 0x5bc], xmm0
mov dword [ebp - 0x1d4], ebx
mov dword [ebp - 0x1d0], ebx
call fcn.10007acd
push 0xc
pop esi
mov dword [ebp - 4], esi
lea ecx, [ebp - 0x298]
mov dword [ebp - 0x30], 0xaf072071
xor eax, eax
mov dword [ebp - 0xfc], 0xa1c17c77
inc eax
mov dword [ebp - 0x30], 5
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x30], 0x615e82aa
push eax
call fcn.10004e2c
mov byte [ebp - 4], 0xd
xor eax, eax
mov dword [ebp - 0x30], 0xffffffff
inc eax
push ecx
mov dword [ebp - 0xa0], 0x62a4b15
lea ecx, [ebp - 0x298]
mov dword [ebp - 0x30], 0xfffffff9
mov edx, 0x37b
mov dword [ebp - 0x28], 0xffffffff
push ecx
mov dword [ebp - 0x30], ebx
push ecx
mov dword [ebp - 0x30], 0xfffffffd
mov dword [ebp - 0x48], ebx
push ecx
mov dword [ebp - 0x34], 0xfffffff8
mov dword [ebp - 0x30], eax
push eax
lea eax, [ebp - 0xc4]
mov dword [ebp - 0x34], 0xffffffff
push eax
mov dword [ebp - 0x2c], ebx
push 0x1a7d
call fcn.100223ea
xor ecx, ecx
mov dword [ebp - 0xc4], ebx
add esp, 0x1c
inc ecx
jmp 0x100243bd
mov eax, dword [ebp - 0xc4]
mov dword [ebp + eax*4 - 0x358], 0x552f0c8c
inc dword [ebp - 0xc4]
cmp dword [ebp - 0xc4], ecx
jl 0x100243a6
mov edi, dword [ebp - 0x1d8]
cmp dword [edi + 4], ebx
jne 0x100243fd
mov eax, dword [ebp - 0x34]
xor edx, edx
mov dword [ebp - 0x34], eax
inc dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x358]
mov eax, dword [ebp - 0x48]
add ecx, eax
mov eax, dword [ebp - 0x2c]
cmp eax, ecx
setge dl
cmp edx, dword [ebp - 0xa0]
jle 0x100243fa
mov ecx, ebx
jmp 0x100243fd
xor ecx, ecx
inc ecx
xor eax, eax
cmp ecx, 0x693009c
sete al
xor edx, edx
cmp eax, 0x9fb1
setne dl
xor ecx, ecx
add edx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0x28]
cmp edx, eax
setge cl
xor edx, edx
cmp ecx, 0x285828e8
setl dl
xor eax, eax
cmp dword [edi + 4], edx
setg al
cmp dword [ebp - 0x298], 0
mov dword [ebp - 0x28], eax
je 0x1002445f
push dword [ebp - 0x298]
call fcn.1004d139
pop ecx
mov dword [ebp - 0x298], ebx
mov dword [ebp - 0x294], ebx
mov dword [ebp - 0x290], ebx
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x1d8]
call fcn.1004d139
pop ecx
lea ecx, [ebp - 0x388]
mov dword [ebp - 0x1d8], ebx
push ecx
lea ecx, [ebp - 0x360]
mov dword [ebp - 0x1d4], ebx
push ecx
lea ecx, [ebp - 0x3a4]
mov dword [ebp - 0x1d0], ebx
push ecx
push 0x7ab2
push ecx
xor eax, eax
mov dword [ebp - 0x178], ebx
inc eax
lea edx, [ebp - 0x370]
mov dword [ebp - 0x3a4], eax
mov ecx, 0x4351
push 0x7da2
push eax
lea eax, [ebp - 0x368]
mov dword [ebp - 0x368], 0x378470ed
push eax
mov dword [ebp - 0x394], 0xc4365dea
lea eax, [ebp - 0x394]
push 0x7707
mov dword [ebp - 0x360], 0xd1c1d686
push eax
mov dword [ebp - 0x370], 0xfffffffd
push 0x22c3
mov dword [ebp - 0x388], 0xf2b8319b
call fcn.100203a6
add esp, 0x2c
mov edi, 0x1bed
mov dword [ebp - 0x15c], esi
cmp esi, 0xe0
jge 0x1002496c
xor edx, edx
mov dword [ebp - 0x24], 0xa12b57e8
mov dword [ebp - 0x1c], ebx
inc edx
jmp 0x10024545
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x3a8], 0x799ac789
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10024534
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], ebx
jl 0x10024579
push edi
push 0x1962
push edx
push 0x3c36
push ebx
push 0xcd4
mov ecx, 0x4821
call fcn.1001e696
add esp, 0x18
dec dword [ebp - 0x24]
push 1
pop edx
jns 0x10024552
mov ecx, dword [ebp - 0x110]
mov esi, dword [ebp - 0x15c]
mov al, byte [ecx]
cmp al, byte [esi + ecx]
jne 0x10024a27
push ebx
push 0x618a
push 0x22e5
push 0x500f
push 0x2e10
push 0x4bff
push ebx
push 0x2b3f
push 0x6d15
mov ecx, 0x7057
call fcn.1001eef1
add esp, 0x1c
lea eax, [ebp - 0x178]
mov cl, 1
push 0x539b
push eax
lea eax, [ebp - 0x15c]
push 0x36a2
push eax
call fcn.1002063d
movdqa xmm0, xmmword [0x10073240]
lea eax, [ebp - 0x5bc]
add esp, 0x18
mov dword [ebp - 0x188], ebx
lea ecx, [ebp - 0x188]
mov dword [ebp - 0x184], ebx
movdqu xmmword [ebp - 0x5cc], xmm0
mov dword [ebp - 0x180], ebx
push dword [ebp - 0x3a8]
push eax
lea eax, [ebp - 0x5cc]
push eax
push ebx
call fcn.10007acd
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x28], edi
cmp dword [ebp - 0x28], 0x1dae
jle 0x1002465f
mov esi, ebx
mov edi, ebx
lea eax, [edi + esi]
mov ecx, 0x10080db8
cdq
push edx
push eax
call fcn.10004c02
inc edi
cmp edi, 0x4f45
jl 0x1002463d
inc esi
cmp esi, 0x41f2
jl 0x1002463b
mov dword [ebp - 0x16c], 3
mov byte [ebp - 4], 0xf
cmp dword [ebp - 0x28], 0x1975
jge 0x100246a3
mov edx, str.crhqm_dtwv_bxafnwhkq_fdrevs_xiosewc_irq_xijziqpzj_zlo_ewe_cuhnft_kcwmikb_rrqi
mov ecx, 0x10080db8
call fcn.10007110
jmp 0x100246a3
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x3b4], 7
mov dword [ebp - 0xb0], 0xfffffff9
mov dword [ebp - 0xf8], 0x48b1647c
mov dword [ebp - 0x40], 0x3a4c
cmp dword [ebp - 0x40], 0x3b02
jle 0x1002475c
mov edx, ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x2c], ebx
mov esi, ebx
mov dword [ebp - 0x38], ebx
mov edi, esi
mov dword [ebp - 0x28], 0x20c
mov esi, dword [ebp - 0x2c]
mov ecx, edi
mov eax, esi
shl eax, cl
lea ecx, [ebp - 0x69c]
xor eax, edx
cdq
push edx
push eax
call fcn.10001a95
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10024715
mov eax, dword [eax]
push eax
call fcn.1004cf6c
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x69c]
call fcn.100052fb
mov edx, dword [ebp - 0x1c]
dec edi
dec dword [ebp - 0x28]
jne 0x100246f5
mov esi, dword [ebp - 0x38]
inc esi
mov dword [ebp - 0x38], esi
cmp esi, 0x4180
jl 0x100246e9
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp eax, 0x4027
jl 0x100246e4
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 0x652c
jl 0x100246e1
mov dword [ebp - 0x2c], 0xffffffff
cmp dword [ebp - 0x40], 0x382c
jge 0x10024777
push str.pbuigm_yogrf_mwjw_udhks_ffozrne_sdtplvibo_hkbjvjb_plhjd_ewuw_tpm
call fcn.1004cf6c
pop ecx
lea eax, [ebp - 0x3b4]
mov dword [ebp - 4], 0xe
push eax
push ebx
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0x188]
push eax
lea edx, [ebp - 0xb0]
call fcn.1001eb40
add esp, 0x14
cmp dword [ebp - 0xb0], ebx
jne 0x1002481e
mov eax, dword [ebp - 0xf8]
cmp dword [ebp - 0x16c], ebx
jne 0x100247ce
cmp dword [ebp - 0xf8], ebx
jne 0x100247ce
xor eax, eax
mov ecx, ebx
inc eax
jmp 0x100247d3
xor eax, eax
inc eax
mov ecx, eax
cmp eax, ecx
push 3
sbb ecx, ecx
xor edx, edx
inc ecx
pop eax
sub eax, ecx
mov dword [ebp - 0xf8], eax
mov ecx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xb0]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0xb0], ecx
mov ecx, dword [ebp - 0x188]
mov eax, dword [ebp - 0xb0]
add eax, dword [ecx + 4]
jne 0x1002481e
xor edx, edx
mov ecx, ebx
inc edx
jmp 0x10024823
xor edx, edx
inc edx
mov ecx, edx
mov eax, dword [ebp - 0x16c]
imul eax, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x188]
sub ecx, dword [eax + 0xc]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [esi + 4]
jl 0x10024931
push edx
lea ecx, [ebp - 0x218]
call fcn.10004e2c
push 0x5aad
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x13
push eax
push 0x4249
push 0x2e8e
push 0x58ee
xor eax, eax
lea ecx, [ebp - 0x4e0]
push 0x438e
inc eax
push eax
push 0x5bb5
push ecx
mov dl, al
xor cl, cl
call fcn.100216df
add esp, 0x24
mov byte [ebp - 0x91], bl
lea eax, [ebp - 0x91]
mov ecx, 0x5fe4
push 0x375f
push 0xbcd
push 0x43d7
push 0x693d
push 0x7f24
push 0x5708
push eax
xor eax, eax
push 0x46e6
inc eax
push eax
push ebx
push 0x6c46
mov dl, al
call fcn.1002245a
add esp, 0x2c
lea eax, [ebp - 0x218]
mov ecx, 0x62b7
push ebx
push 0x7aef
sub esp, 0xc
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.1001ee46
add esp, 0x1c
cmp dword [ebp - 0x218], 0
je 0x1002494f
push dword [ebp - 0x218]
call fcn.1004d139
pop ecx
mov dword [ebp - 0x218], ebx
mov dword [ebp - 0x214], ebx
mov dword [ebp - 0x210], ebx
jmp 0x1002494f
push 0x3a6
lea eax, [ebp - 0xb0]
mov cl, 1
push eax
push edx
push 0x1540
xor dl, dl
call fcn.10021be5
add esp, 0x10
or dword [ebp - 4], 0xffffffff
push esi
call fcn.1004d139
pop ecx
mov dword [ebp - 0x188], ebx
mov dword [ebp - 0x184], ebx
mov dword [ebp - 0x180], ebx
mov dword [ebp - 0x2d8], 4
lea ecx, [ebp - 0x25c]
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x30], 6
push 2
call fcn.10004e2c
mov dword [ebp - 4], 0x14
mov dword [ebp - 0x40], 0x2c920859
mov dword [ebp - 0x38], 0x1bab
cmp dword [ebp - 0x38], 0x1d96
jle 0x10024a02
mov edx, ebx
mov dword [ebp - 0x1c], ebx
mov edi, ebx
mov esi, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x28], 0x3163
mov ecx, ebx
mov eax, edi
sar eax, cl
mov ecx, 0x10080db8
and eax, edx
cdq
push edx
push eax
call fcn.10004c02
mov edx, dword [ebp - 0x1c]
add ebx, esi
dec dword [ebp - 0x28]
jne 0x100249c2
inc esi
push 0
pop ebx
cmp esi, 0x49c2
jl 0x100249b8
inc edi
cmp edi, 0x5e5d
jl 0x100249b6
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 0x2d1f
jl 0x100249b4
mov dword [ebp - 0x30], 0x582ba8d7
mov byte [ebp - 4], 0x15
cmp dword [ebp - 0x38], 0x1894
jge 0x10024a49
mov edx, str.gxgbxgyf_hbe_purkqz_nmof_ztxgu_ojwe_svp_swuvmgrs_fio_uwsu_rzehk_pnbyhfm
mov ecx, 0x10080db8
call fcn.10007110
jmp 0x10024a49
inc esi
jmp 0x10024513
push 0x7bc8
push 0x3d3a
push 0x54db
push 0x230b
lea ecx, [ebp - 0x25c]
xor eax, eax
push ecx
lea ecx, [ebp - 0x550]
inc eax
push ecx
push ebx
push 0x1e7e
push 0x3d56
mov dl, al
xor cl, cl
call fcn.100216df
mov dword [ebp - 0x20], 0x19
add esp, 0x24
cmp dword [ebp - 0x20], 0xd
je 0x10024af4
xor ecx, ecx
inc ecx
mov dword [ebp - 0x30], 0xd4e793
mov dword [ebp - 0x30], 0xfffffff7
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x30], 3
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x30], 0xfffffff7
mov dword [ebp - 0x30], 0xbf33880e
mov dword [ebp - 0x30], 0x71013923
mov dword [ebp - 0x1c], ebx
jmp 0x10024ae3
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x564], 0xc044b0bf
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10024ad2
inc dword [ebp - 0x40]
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xd
jne 0x10024a95
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x25c], 0
je 0x10024b1f
push dword [ebp - 0x25c]
call fcn.1004d139
pop ecx
mov dword [ebp - 0x25c], ebx
mov dword [ebp - 0x258], ebx
mov dword [ebp - 0x254], ebx
push 2
lea ecx, [ebp - 0x1f8]
mov dword [ebp - 0x1ac], 0x1007dbd0
call fcn.10004e2c
mov dword [ebp - 4], 0x17
lea ecx, [ebp - 0x1e8]
mov dword [ebp - 0x38], 0x9a488d5
push 3
call fcn.10004e2c
mov byte [ebp - 4], 0x18
mov dword [ebp - 0x378], 0xe131a3a4
mov dword [ebp - 0x88], ebx
jmp 0x10024b7e
mov eax, dword [ebp - 0x88]
mov dword [ebp + eax*4 - 0x138], 4
inc dword [ebp - 0x88]
cmp dword [ebp - 0x88], 3
jl 0x10024b67
push ecx
lea eax, [ebp - 0x88]
mov edx, 0x287a
push eax
push 1
push ecx
lea eax, [ebp - 0x1f8]
push eax
push ecx
call fcn.10020695
add esp, 0x14
lea eax, [ebp - 0x88]
mov edx, 0x5360
push 1
push eax
push 0x4275
push ecx
push ecx
lea ecx, [ebp - 0x1e8]
call fcn.1001f789
add esp, 0x18
mov dword [ebp - 0x130], ebx
jmp 0x10024be2
mov dword [ebp - 0x28], 0x77dd6887
inc dword [ebp - 0x28]
inc dword [ebp - 0x130]
cmp dword [ebp - 0x130], 0x12
jge 0x10024bd2
xor eax, eax
inc eax
cmp dword [ebp - 0x130], eax
jne 0x10024c00
mov edx, eax
cmp dword [ebp - 0x130], ebx
jne 0x10024c02
mov edx, ebx
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x1f8]
sub eax, edx
neg eax
sbb eax, eax
inc eax
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x130]
mov eax, dword [ebp - 0x130]
mov eax, dword [ebp - 0x134]
xor eax, eax
cmp dword [ecx + 4], ebx
setne al
xor edx, edx
cmp eax, 0x9475
mov eax, dword [ebp - 0x130]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
imul eax, ecx, 7
inc eax
cmp eax, 0xb8f3d421
jne 0x10024d96
push 3
pop eax
mov dword [ebp - 0x160], 0x186e1459
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x30], 0xffffffff
push eax
call fcn.10004e2c
push 0xe98
push 0x5338
push ecx
lea eax, [ebp - 0xd8]
mov byte [ebp - 4], 0x19
push eax
push ecx
push ebx
mov edx, 0x2d42
lea ecx, [ebp - 0x230]
call fcn.1001f712
add esp, 0x18
mov dword [ebp - 0xd8], ebx
jmp 0x10024cc8
mov eax, dword [ebp - 0xd8]
mov dword [ebp + eax*4 - 0x59c], 0x760
inc dword [ebp - 0xd8]
cmp dword [ebp - 0xd8], 2
jl 0x10024cb1
mov eax, dword [ebp - 0x1e8]
dec dword [eax + 8]
mov dword [ebp - 0x9c], ebx
jmp 0x10024d60
mov dword [ebp - 0x154], 0x6b786ae2
lea edx, [ebp - 0x154]
mov eax, dword [ebp - 0x154]
mov eax, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x59c]
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x160], 3
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
push ecx
lea eax, [ebp - 0x378]
mov dword [ebp - 0x130], ebx
push eax
lea eax, [ebp - 0x9c]
push eax
lea eax, [ebp - 0x1e8]
push eax
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x160]
push eax
push 1
lea ecx, [ebp - 0x1f8]
call fcn.10020900
add esp, 0x1c
dec dword [ebp - 0x9c]
cmp dword [ebp - 0x9c], 0xfffffffb
jle 0x10024ce2
cmp dword [ebp - 0x230], 0
je 0x10024dc0
push dword [ebp - 0x230]
call fcn.1004d139
pop ecx
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x22c], ebx
mov dword [ebp - 0x228], ebx
jmp 0x10024dc0
lea eax, [ebp - 0x2ac]
mov dword [ebp - 0x2ac], 0xffdb42e2
push eax
push 0x215b
xor eax, eax
mov edx, 0x7e0c
inc eax
push ebx
push eax
mov cl, al
call fcn.1002198c
add esp, 0x10
cmp dword [ebp - 0x1e8], 0
je 0x10024de7
push dword [ebp - 0x1e8]
call fcn.1004d139
pop ecx
mov dword [ebp - 0x1e8], ebx
mov dword [ebp - 0x1e4], ebx
mov dword [ebp - 0x1e0], ebx
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x1f8], 0
je 0x10024e12
push dword [ebp - 0x1f8]
call fcn.1004d139
pop ecx
mov dword [ebp - 0x1f8], ebx
mov dword [ebp - 0x1f4], ebx
mov dword [ebp - 0x1f0], ebx
mov eax, dword [ebp - 0x110]
mov cl, byte [0x1007dbd0]
mov byte [ebp - 0x49], cl
mov dl, byte [eax]
call fcn.100286c1
mov byte [0x1007dbd0], al
mov dword [ebp - 0x2c], 0xfffa
mov dword [ebp - 0x64], 0xffffffff
mov dword [ebp - 0x5c], 0xfffffffe
mov dword [ebp - 0x28], 0x8c8
cmp dword [ebp - 0x28], 0x9aa
jle 0x10024eae
mov ecx, ebx
mov dword [ebp - 0x24], ebx
mov edi, ebx
mov esi, ebx
lea eax, [esi + edi]
xor eax, ecx
lea ecx, [ebp - 0x624]
cdq
push edx
push eax
call fcn.10001a95
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10024e78
mov eax, dword [eax]
push eax
call fcn.1004cf6c
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x624]
call fcn.100052fb
mov ecx, dword [ebp - 0x24]
inc esi
cmp esi, 0x2565
jl 0x10024e5b
inc edi
cmp edi, 0x52b2
jl 0x10024e59
inc ecx
mov dword [ebp - 0x24], ecx
cmp ecx, 0x7ef
jl 0x10024e57
mov dword [ebp - 0x1c], 0xffffffff
cmp dword [ebp - 0x28], 0x601
jge 0x10024ec9
push str.cpsojgko_beeiocl_fjukdywj_ejugmwput_tslhkwdp_cgvwykb_mpsnowql_vxt_nnlaslpdu_jjy_fnups_bzxtqisu_cmvptn_mmroxjm
call fcn.1004cf6c
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x268]
mov dword [ebp - 0x168], 9
push 4
call fcn.10004e2c
mov dword [ebp - 4], 0x1c
mov dword [ebp - 0x20], ebx
jmp 0x10024f03
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x268]
mov dword [eax + ecx*4], 5
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10024ef0
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
cmp eax, dword [ebp - 0x64]
jge 0x10024f1e
cmp dword [ebp - 0x64], ebx
je 0x10024f1e
xor eax, eax
inc eax
jmp 0x10024f20
mov eax, ebx
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0x5c]
jge 0x10024f3e
cmp dword [ebp - 0x64], ebx
je 0x10024f3e
xor ecx, ecx
inc ecx
jmp 0x10024f40
mov ecx, ebx
inc dword [ebp - 0x2c]
add ecx, 0x3a4c924b
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x5c]
cmp ecx, eax
mov eax, dword [ebp - 0x5c]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x5c], ecx
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x168]
cmp dword [ebp - 0x1c], ebx
je 0x10024fdb
push ecx
push 1
push 0x228e
mov dword [ebp - 0x2b8], 0xa93f0451
lea edx, [ebp - 0x168]
push ecx
mov dword [ebp - 0x2b0], 0xfffffffc
call fcn.10020ac1
add esp, 0xc
lea eax, [ebp - 0x5c]
lea ecx, [ebp - 0x64]
push eax
push 0x28df
lea eax, [ebp - 0x168]
push eax
push 1
lea eax, [ebp - 0x2b0]
push eax
lea eax, [ebp - 0x2b8]
push eax
call fcn.1001e35b
add esp, 0x1c
jmp 0x10025002
push ebx
xor eax, eax
mov edx, 0x4ab2
inc eax
mov ecx, 0x6f46
push eax
push 0x799e
push eax
push 0x63b9
push 0x5737
call fcn.100210a5
add esp, 0x18
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x268], 0
je 0x1002502d
push dword [ebp - 0x268]
call fcn.1004d139
pop ecx
mov dword [ebp - 0x268], ebx
mov dword [ebp - 0x264], ebx
mov dword [ebp - 0x260], ebx
xor edi, edi
inc edi
mov dword [ebp - 0x20], ebx
lea ecx, [ebp - 0x274]
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x48], 0xffffffff
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x30], 0xedc0223d
mov dword [ebp - 0x30], 7
mov dword [ebp - 0x30], 5
push 4
call fcn.10004e2c
push ecx
push ecx
lea eax, [ebp - 0x274]
mov dword [ebp - 0x2c], 0x3928
push eax
push ecx
mov dword [ebp - 0x30], 0xdcb0c7b2
lea edx, [ebp - 0xc8]
mov cl, 1
call fcn.1001e4e8
add esp, 0x10
mov dword [ebp - 0xc8], ebx
jmp 0x100250b8
mov eax, dword [ebp - 0xc8]
mov dword [ebp + eax*4 - 0x4ac], 0xb63e91c
inc dword [ebp - 0xc8]
cmp dword [ebp - 0xc8], 3
jl 0x100250a1
lea eax, [ebp - 0x75]
mov byte [ebp - 0x75], bl
push eax
xor eax, eax
inc eax
push eax
push 0x5de9
push 0x3040
mov dl, al
mov cl, al
call fcn.1001e54e
mov dword [ebp - 0x20], ebx
add esp, 0x10
cmp dword [ebp - 0x20], 0xfffffff2
je 0x10025192
xor ecx, ecx
inc ecx
mov dword [ebp - 0x18], ebx
jmp 0x10025104
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x250], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x100250f7
mov dword [ebp - 0x18], ebx
jmp 0x10025120
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1b4], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1002510f
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x4ac]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
inc dword [ebp - 0x4ac]
dec dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x250]
mov eax, dword [ebp - 0x250]
mov eax, dword [ebp - 0x250]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x250]
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x1c], ebx
jmp 0x10025180
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1b4], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x1002516f
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff2
jne 0x100250f2
cmp dword [ebp - 0x274], 0
je 0x100251b9
push dword [ebp - 0x274]
call fcn.1004d139
pop ecx
mov dword [ebp - 0x274], ebx
mov dword [ebp - 0x270], ebx
mov dword [ebp - 0x26c], ebx
mov al, byte [edi + 0x1007dbd0]
mov edx, 0x4513
push ecx
push ebx
push ecx
push 0x1dfc
mov byte [ebp - 0x39], al
mov byte [ebp - 0x7d], al
call fcn.1001f573
mov eax, edi
mov cl, byte [ebp - 0x39]
cdq
add esp, 0x10
idiv dword [ebp - 0x178]
mov esi, edx
mov dl, byte [ebp - 0x49]
call fcn.100286c1
mov ecx, dword [ebp - 0x110]
mov dl, byte [esi + ecx]
mov cl, al
call fcn.100286c1
mov byte [edi + 0x1007dbd0], al
xor ecx, ecx
mov dword [ebp - 0x2c0], 0xfffffff8
inc ecx
mov dword [ebp - 0x1c], ebx
jmp 0x10025229
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x514], 4
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10025218
push ecx
push ecx
push 0x4e31
xor cl, cl
call fcn.10022870
pop ecx
pop ecx
lea eax, [ebp - 0x2c0]
push eax
push ecx
push ecx
push 1
push 0x200e
push ecx
push ecx
call fcn.10020cd9
push 0xc6b
xor eax, eax
lea ecx, [ebp - 0x7d]
inc eax
mov edx, 0x7c0b
push eax
push eax
push 0x548e
push ecx
push 0x1640
push 0x35a3
lea ecx, [ebp - 0x49]
push ecx
push eax
push 0x534a
mov ecx, 0x44ca
call fcn.10020d10
add esp, 0x48
inc edi
cmp edi, 4
jl 0x10025030
mov eax, dword [0x1007dbd0]
xor edx, edx
mov dword [ebp - 0x114], eax
inc edx
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x2c], 0xffffffff
push 8
pop eax
mov dword [ebp - 0x240], eax
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x18], 0xffffffe8
jmp 0x10025405
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x34], 0x2157
mov dword [ebp - 0x28], 0x9978317d
mov dword [ebp - 0x48], 0xad8a0f83
mov dword [ebp - 0x1c], ebx
jmp 0x10025308
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x194], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100252fb
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x190]
mov eax, dword [ebp - 0x24]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x194]
setle dl
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, 2
ja 0x10025346
cmp dword [ebp - 0x18], ebx
je 0x10025346
xor edx, edx
inc edx
jmp 0x10025348
mov edx, ebx
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setne cl
xor edx, edx
test ecx, ecx
sets dl
xor ecx, ecx
cmp edx, eax
setle cl
cmp ecx, dword [ebp - 0x194]
jle 0x10025370
cmp dword [ebp - 0x24], ebx
jne 0x1002537c
cmp dword [ebp - 0x18], ebx
jne 0x1002537c
xor edx, edx
mov esi, ebx
inc edx
jmp 0x10025381
xor edx, edx
inc edx
mov esi, edx
mov eax, dword [ebp - 0x190]
xor ecx, ecx
cmp eax, 0x85a9
setle cl
mov dword [ebp - 0x20], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x190]
cmp esi, eax
mov eax, dword [ebp - 0x20]
setl cl
add eax, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x190], eax
jg 0x100253ed
cmp dword [ebp - 0x190], ebx
je 0x100253ed
mov eax, dword [ebp - 0x20]
mov ecx, 0x77b69c93
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x194]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x240]
mov eax, dword [ebp - 0x240]
sub ecx, eax
je 0x100253ed
mov esi, edx
cmp dword [ebp - 0x190], ebx
jne 0x100253ef
mov esi, ebx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp esi, eax
setge cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x48], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jg 0x100252de
mov dword [ebp - 0x40], 0xd9d
cmp dword [ebp - 0x40], 0xf4c
jle 0x1002545f
mov edi, ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x28], 0x4f8f
mov esi, ebx
mov eax, esi
mov ecx, 0x10080db8
and eax, edi
cdq
push edx
push eax
call fcn.10004c02
inc esi
cmp esi, 0x1e8b
jl 0x10025430
dec edi
dec dword [ebp - 0x28]
jne 0x1002542e
mov edi, dword [ebp - 0x38]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, 0x4b47
jl 0x10025424
cmp dword [ebp - 0x18], ebx
je 0x1002546a
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x240]
mov eax, dword [ebp - 0x23c]
mov ecx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x23c]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
je 0x100254e8
mov dword [ebp - 0x2d0], 1
push 0xa
mov dword [ebp - 0x2c8], ebx
mov dword [ebp - 0x20], ebx
pop edi
jmp 0x100254b4
xor cl, cl
call fcn.1001fad4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jge 0x100254aa
push 0x5a5a
push 0x7f2a
push 0x2dd
lea eax, [ebp - 0x2c8]
push eax
push ecx
push ecx
push 0x682
push 1
lea edx, [ebp - 0x2d0]
call fcn.10020e70
add esp, 0x20
jmp 0x10025504
mov byte [ebp - 0x39], bl
cmp byte [ebp - 0x39], 0
je 0x10025504
push ebx
push ecx
mov edx, 0x40c7
mov ecx, 0xf6e
call fcn.10021459
pop ecx
pop ecx
mov dword [ebp - 4], 0x1d
cmp dword [ebp - 0x40], 0x9f5
jge 0x10025541
mov edx, str.ipjllulhh_uwpsii_wlaqin
mov ecx, 0x10080db8
call fcn.10007110
jmp 0x10025541
or dword [ebp - 4], 0xffffffff
xor eax, eax
inc eax
cmp dword [ebp - 0x114], 0
jle 0x10027c1b
cmp dword [ebp - 0x114], 0x2c06
jae 0x10027c1b
lea ecx, [ebp - 0x1ac]
mov edx, 0x6ec2
push ecx
sub esp, 0xc
lea ecx, [ebp - 0x178]
push ecx
lea ecx, [ebp - 0x49]
push ecx
push 0x1558
push eax
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x2d8]
push eax
lea ecx, [ebp - 0x110]
call fcn.10020f84
add esp, 0x28
mov dword [ebp - 0x2c], 0x509978f3
mov dword [ebp - 0x30], 0xd42374b1
lea ecx, [ebp - 0x5ac]
push 1
call fcn.10004e2c
mov dword [ebp - 4], 0x1f
mov dword [ebp - 0x30], 0x54207647
mov dword [ebp - 0x28], 0xffff
mov dword [ebp - 0xcc], ebx
cmp dword [ebp - 0xcc], 3
jge 0x100255ff
xor esi, esi
inc esi
mov eax, dword [ebp - 0xcc]
mov dword [ebp + eax*4 - 0x54c], esi
inc dword [ebp - 0xcc]
cmp dword [ebp - 0xcc], 3
jl 0x100255e3
lea eax, [ebp - 0xcc]
push eax
push 0x43ab
push ebx
xor eax, eax
lea ecx, [ebp - 0x5ac]
inc eax
push 0x65b7
push eax
push 0x3b6c
mov dl, al
call fcn.1001e696
add esp, 0x18
lea ecx, [ebp - 0x5ac]
inc dword [ebp - 0x544]
mov eax, dword [ebp - 0x2c]
neg dword [ebp - 0x2c]
inc dword [ebp - 0x28]
or dword [ebp - 4], 0xffffffff
call fcn.100054ce
push 0x106bfb10
push ecx
push 1
sub esp, 0xc
call fcn.1001ec71
mov dword [ebp - 0x38], 0x7fcb
add esp, 0x18
cmp dword [ebp - 0x38], 0x819c
jle 0x100256ae
mov dword [ebp - 0x60], ebx
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x28], 0x76c0
mov ebx, dword [ebp - 0x60]
mov eax, ebx
mov ecx, 0x10080db8
or eax, edi
cdq
push edx
push eax
call fcn.10004c02
add edi, esi
dec dword [ebp - 0x28]
jne 0x1002567c
inc esi
push 0
pop ebx
cmp esi, 0x456d
jl 0x10025670
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp eax, 0x47e7
jl 0x1002566e
mov dword [ebp - 4], 0x20
cmp dword [ebp - 0x38], 0x7c81
mov dword [ebp - 0x60], ebx
jge 0x100256ee
mov edx, str.cufd_qzl_anfuwrtbd_mxptk_vmip_dlbg_vigshbeu_azon_upsucdh_dotyefi_muohq_fpks_gycpw_efzl
mov ecx, 0x10080db8
call fcn.10007110
jmp 0x100256ee
or dword [ebp - 4], 0xffffffff
xor ecx, ecx
mov dword [ebp - 0x20], 8
inc ecx
mov dword [ebp - 0x30], 9
mov dword [ebp - 0x20], 9
jmp 0x1002574a
mov dword [ebp - 0x1c], ebx
jmp 0x10025722
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x208], 0xedc7555b
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10025711
push ebx
push ecx
mov dl, cl
mov byte [ebp - 0x81], bl
lea ecx, [ebp - 0x81]
call fcn.1001fb36
dec dword [ebp - 0x208]
dec dword [ebp - 0x20]
pop ecx
pop ecx
push 1
pop ecx
cmp dword [ebp - 0x20], 0xfffffffb
jne 0x1002570c
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0xf0], 0xbafc
add eax, 4
mov dword [ebp - 0x104], 0x8b081589
mov dword [ebp - 0x28], 0x4f76
cmp dword [ebp - 0x28], 0x4ff5
mov dword [ebp - 0x58], eax
jle 0x100257a9
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
sar eax, cl
mov ecx, 0x10080db8
cdq
push edx
push eax
call fcn.10004c02
inc edi
cmp edi, 0x682a
jl 0x10025784
inc esi
cmp esi, 0x7b43
jl 0x10025782
mov dword [ebp - 0x118], 1
mov dword [ebp - 4], 0x22
cmp dword [ebp - 0x28], 0x4da9
jge 0x100257d2
mov edx, str.zjqumwmcx_fxakmrnsj_vnk_voeunbh_vqvcmoqqo_ucchgaxzm_ddnyg_qqgkiacsk_gbuhgi_fmehmadj
mov ecx, 0x10080db8
call fcn.10007110
or dword [ebp - 4], 0xffffffff
movdqa xmm0, xmmword [0x10073220]
lea ecx, [ebp - 0x5dc]
push ecx
lea eax, [ebp - 0x5cc]
push eax
push ecx
lea ecx, [ebp - 0x318]
movdqu xmmword [ebp - 0x5dc], xmm0
call fcn.10004e68
mov dword [ebp - 4], 0x24
xor ecx, ecx
mov dword [ebp - 0x200], 1
mov dword [ebp - 0x2f0], 0xf6f594a3
mov eax, dword [ebp - 0xf0]
cmp eax, 9
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x104]
setl cl
sub edx, ecx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x104]
setl cl
add eax, ecx
mov ecx, dword [ebp - 0xf0]
add ecx, eax
jne 0x1002585b
mov eax, dword [ebp - 0x104]
xor edx, edx
inc edx
mov dword [ebp - 0x118], edx
mov ecx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x318]
mov dword [eax], ecx
test ecx, ecx
je 0x100258de
push 0x6366
lea eax, [ebp - 0x318]
mov dword [ebp - 0x2e0], 6
push eax
push edx
push edx
push 0x793f
push ebx
lea eax, [ebp - 0x200]
push 0x5658
push eax
lea edx, [ebp - 0x2e0]
lea ecx, [ebp - 0xf0]
call fcn.100217ca
add esp, 0x20
jmp 0x100259e9
mov dword [ebp - 0x38], 0x4a9e
cmp dword [ebp - 0x38], 0x4c3c
jle 0x10025946
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, ebx
mov dword [ebp - 0x28], ebx
mov edi, esi
mov esi, 0x23c1
mov eax, edi
lea ecx, [ebp - 0x63c]
cdq
push edx
push eax
call fcn.10001a95
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1002591b
mov eax, dword [eax]
push eax
call fcn.1004cf6c
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x63c]
call fcn.100052fb
dec edi
dec esi
jne 0x10025901
mov esi, dword [ebp - 0x28]
inc esi
mov dword [ebp - 0x28], esi
cmp esi, 0x13ca
jl 0x100258fa
xor edx, edx
inc edx
push edx
lea ecx, [ebp - 0x55c]
call fcn.10004e2c
cmp dword [ebp - 0x38], 0x4964
jge 0x10025966
push str.xhvn_viw_skc
call fcn.1004cf6c
pop ecx
xor eax, eax
mov dword [ebp - 4], 0x25
inc eax
mov dword [ebp - 0x2e8], 0x3fe29831
push eax
push eax
lea ecx, [ebp - 0x55c]
push ecx
push eax
push 0x2987
push 0x5d4
lea edx, [ebp - 0x5a0]
mov ecx, 0x3b2f
call fcn.100210a5
add esp, 0x18
lea eax, [ebp - 0x104]
lea edx, [ebp - 0x318]
push eax
sub esp, 0xc
lea eax, [ebp - 0x200]
push eax
push ebx
lea eax, [ebp - 0x118]
push eax
push ecx
lea eax, [ebp - 0x2e8]
mov ecx, 0x115a
push 0xf45
push eax
call fcn.1001e9a5
add esp, 0x28
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x55c]
call fcn.100054ce
lea eax, [ebp - 0x2f0]
push eax
push 0x2e49
push ecx
push 1
lea eax, [ebp - 0x118]
mov ecx, 0x2b8c
push eax
lea eax, [ebp - 0xf0]
push eax
lea eax, [ebp - 0x104]
push eax
lea edx, [ebp - 0x318]
call fcn.100211f5
add esp, 0x1c
lea ecx, [ebp - 0x318]
or edi, 0xffffffff
mov dword [ebp - 4], edi
call fcn.100054ce
mov dword [ebp - 0x20], ebx
lea ecx, [ebp - 0x584]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x30], 0xedc0223d
mov dword [ebp - 0x30], 7
mov dword [ebp - 0x30], 5
push 4
call fcn.10004e2c
lea eax, [ebp - 0x584]
mov dword [ebp - 4], 0x28
push eax
sub esp, 0x18
mov dword [ebp - 0x2c], 0x3928
mov dword [ebp - 0x30], 0xdcb0c7b2
push 1
push 0x65da
push ecx
lea ecx, [ebp - 0xd4]
call fcn.10020819
add esp, 0x28
mov dword [ebp - 0xd4], ebx
jmp 0x10025ab6
mov eax, dword [ebp - 0xd4]
mov dword [ebp + eax*4 - 0x470], 0xb63e91c
inc dword [ebp - 0xd4]
cmp dword [ebp - 0xd4], 3
jl 0x10025a9f
push ecx
mov byte [ebp - 0x7e], bl
lea ecx, [ebp - 0x7e]
push 1
call fcn.1001e5ae
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], 0xfffffff2
pop ecx
pop ecx
je 0x10025b77
xor ecx, ecx
inc ecx
mov dword [ebp - 0x18], ebx
jmp 0x10025af1
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x248], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10025ae4
mov dword [ebp - 0x18], ebx
jmp 0x10025b09
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1bc], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10025afc
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x470]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
inc dword [ebp - 0x470]
dec dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x248]
mov eax, dword [ebp - 0x248]
mov eax, dword [ebp - 0x248]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x248]
mov eax, dword [ebp - 0x1bc]
mov dword [ebp - 0x1c], ebx
jmp 0x10025b65
cmp dword [ebp - 0x1c], ecx
jl 0x10025b58
lea ecx, [ebp - 0x584]
mov dword [ebp - 4], edi
call fcn.100054ce
mov byte [ebp - 0xbc], bl
mov dword [ebp - 0xbb], 0x590f03c5
mov byte [ebp - 0xb7], 0xab
mov dword [ebp - 0x20], 8
mov dword [ebp - 0x24], 0x8876942a
mov dword [ebp - 0xf4], 0x729cf308
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x1c], ebx
jmp 0x10025bd0
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x150], 2
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10025bbf
mov eax, dword [ebp - 0x24]
mov ecx, 0x96e6a373
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0x24]
cmp ecx, eax
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xf4]
neg ecx
sbb ecx, ecx
add eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
inc ecx
imul ecx, eax
mov eax, dword [ebp - 0x18]
imul edx, ecx
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x18]
jg 0x10025c47
mov byte [ebp - 0x39], bl
cmp byte [ebp - 0x39], 0
je 0x10025c36
push 1
mov edx, 0x11e
call fcn.100225b7
pop ecx
lea eax, [ebp - 0x80]
mov byte [ebp - 0x80], bl
push eax
mov dl, 1
call fcn.100212a3
pop ecx
jmp 0x10025c74
lea eax, [ebp - 0xf4]
mov dword [ebp - 0x2f8], ebx
push eax
xor eax, eax
lea ecx, [ebp - 0x2f8]
inc eax
mov edx, 0x7b2a
push eax
push ecx
push eax
push 0x3dd4
xor cl, cl
call fcn.10021c60
add esp, 0x14
mov dword [ebp - 0x18], 3
cmp dword [ebp - 0x18], ebx
jl 0x10025d8d
mov dword [ebp - 0x2c], 0xe1753097
mov dword [ebp - 0x1c], 0x67afff16
mov dword [ebp - 0x34], ebx
cmp dword [ebp - 0xf4], ebx
je 0x10025cce
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x148]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x2c]
sub ecx, eax
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp + eax*4 - 0x150]
jl 0x10025d12
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x150], ebx
je 0x10025d12
mov edx, ebx
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x150]
cmp edx, eax
setl cl
imul ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x150]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x150]
add eax, dword [ebp - 0x28]
jne 0x10025d65
push 0xa
pop eax
push 2
mov word [ebp - 0x100], ax
pop esi
mov dword [ebp - 0x13c], ebx
mov dword [ebp - 0x2c], esi
cmp esi, 6
jae 0x10026768
lea eax, [ebp - 0x1cc]
mov dword [ebp - 0x6c], ebx
push eax
push ebx
xor eax, eax
mov dword [ebp - 0x204], 0x8373b2c
inc eax
mov dword [ebp - 0x158], 0x62a96950
push eax
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x90], ebx
push ecx
push 0x1468
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x1cc], 0x4495
push ecx
lea ecx, [ebp - 0x1fc]
mov dword [ebp - 0x1fc], 0xb489f7a9
push ecx
push 0x6c8e
push eax
lea eax, [ebp - 0x204]
mov edx, 0x69f5
push eax
lea ecx, [ebp - 0x158]
call fcn.10020d10
mov eax, dword [ebp - 0x6c]
xor ecx, ecx
mov eax, dword [ebp - 0x1fc]
add esp, 0x28
test eax, eax
mov eax, dword [ebp - 0x158]
setg cl
sub ecx, eax
cmp ecx, 0xfff7
sbb eax, eax
neg eax
cmp eax, 0xc6c8951b
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x6a4abff1
setne cl
cmp ecx, dword [ebp - 0x158]
jle 0x10025ff6
push 3
lea ecx, [ebp - 0x494]
call fcn.10004e2c
mov dword [ebp - 4], 0x29
lea ecx, [ebp - 0x47c]
mov dword [ebp - 0x2a8], 0xffbc9ee5
push 3
call fcn.10004e2c
push 3
mov byte [ebp - 4], 0x2a
mov dword [ebp - 0x18], ebx
pop edx
jmp 0x10025eaa
mov dword [ebp - 0x2b4], 0x44ffa2b8
mov dword [ebp - 0x380], 0xe4e412c2
mov dword [ebp - 0x90], 9
jmp 0x1002605d
mov dword [ebp - 0x24], 0xac204e2d
xor ecx, ecx
mov dword [ebp - 0x34], 0xfffffffe
inc ecx
mov dword [ebp - 0x30], 0x6bafcb14
mov dword [ebp - 0x2cc], 0xffff
mov dword [ebp - 0x30], 0xbed99783
mov dword [ebp - 0x24], ebx
jmp 0x100267a7
cmp dword [ebp - 0x24], ecx
jl 0x10026796
mov dword [ebp - 0xc0], 0x1f2c29a3
xor ecx, ecx
mov dword [ebp - 0x58], ebx
inc ecx
mov eax, dword [ebp - 0xc0]
mov edx, ecx
cmp dword [ebp - 0xc0], ebx
jne 0x10027c3d
mov edx, ebx
mov eax, dword [ebp - 0xc0]
sub eax, edx
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
dec eax
neg eax
push ecx
sbb eax, eax
inc eax
cmp dword [ebp - 0xc0], eax
jl 0x10027c86
push 0x6b09
push ecx
push 0x13f6
push ecx
mov dl, cl
call fcn.10023759
add esp, 0x10
mov byte [ebp - 0xa1], bl
lea edx, [ebp - 0xa1]
push ebx
call fcn.100226a5
pop ecx
pop ecx
jmp 0x10027ce0
lea ecx, [ebp - 0x44c]
call fcn.10004e2c
push ecx
push 0x36a7
push ebx
push ecx
push 0x7d4d
lea edx, [ebp - 0x44c]
mov dword [ebp - 4], 0x4a
lea ecx, [ebp - 0x538]
call fcn.10022267
add esp, 0xc
lea eax, [ebp - 0x44c]
lea ecx, [ebp - 0xc0]
push 0x6f24
push eax
push 1
call fcn.1001fc98
add esp, 0x14
lea ecx, [ebp - 0x44c]
call fcn.100054ce
mov ecx, dword [ebp - 0xc]
mov eax, 0x106bfb10
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret