Function at 0x50ecae
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x14
call fcn.00519f9d
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
push 0x6c
call fcn.00519f9d
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1b
rep stosd dword es:[edi], eax
add ebx, 0x68
push ebx
push 0x88
call fcn.00519f9d
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x630b19
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x20
rep stosd dword es:[edi], eax
mov dword [ebp - 0x24], 0
push 8
call fcn.00519f9d
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x630846
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x2c], 0
push 8
call fcn.00519f9d
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x630846
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov ebx, dword [0x12d117c]
call fcn.0040163b
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x51255d
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x51255a
cmp dword [ebp - 4], 1
jne 0x50edeb
mov eax, 0x630b3c
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x50ede2
push ebx
call fcn.00519f97
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x50ee42
cmp dword [ebp - 4], 2
jne 0x50ee14
mov eax, 0x630b46
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x50ee0b
push ebx
call fcn.00519f97
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x50ee42
cmp dword [ebp - 4], 3
jne 0x50ee3d
mov eax, 0x630b51
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x50ee34
push ebx
call fcn.00519f97
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x50ee42
jmp 0x51255d
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 1
lea eax, [ebp - 8]
push eax
call fcn.005126a8
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x3c], 0
push 0
lea eax, [ebp - 0x3c]
push eax
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
call fcn.005126c6
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x50ee90
push ebx
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x50eea0
push ebx
call fcn.00519f97
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x50eeb4
push ebx
call fcn.00519f97
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.005127e5
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x630844
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x50eeeb
push ebx
call fcn.00519f97
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0xe1
call fcn.00519faf
cmp dword [ebp - 0x44], esp
je 0x50ef1f
push 0x267
push 0x40ad828
push 6
call fcn.00519fa3
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x50ef2f
push ebx
call fcn.00519f97
add esp, 4
push 0x80000004
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x50ef42
mov eax, 0x63084e
push eax
push 1
mov ebx, 0x51d390
call fcn.00519fa9
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x50ef6c
push ebx
call fcn.00519f97
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00512896
mov dword [ebp - 0x1c], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x50ef8f
mov eax, 0x63084e
push eax
push 1
mov ebx, 0x51d2e0
call fcn.00519fa9
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.005128ba
test eax, eax
je 0x50efd8
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x50efd8
mov eax, 1
jmp 0x50efdd
mov eax, 0
test eax, eax
je 0x512553
mov dword [ebp - 0x24], 0
mov ebx, dword [ebp - 0x20]
add ebx, 0x3c
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
push 0x2000
push 0x1000
call fcn.00512cc1
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], esp
push 0x40
push dword [ebp - 0x50]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push 0
push 0xffffffff
mov eax, 0xe2
call fcn.00519faf
cmp dword [ebp - 0x54], esp
je 0x50f077
push 0x433
push 0x40ad828
push 6
call fcn.00519fa3
add esp, 0xc
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x40
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call fcn.00512ce4
push 8
call fcn.00519f9d
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x630846
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x1c]
call fcn.00514342
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.00519f97
add esp, 4
mov eax, dword [ebp - 0x40]
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x50f244
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50f11c
push 0x51a
push 0x40ad828
push 4
call fcn.00519fa3
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50f139
push 0x51a
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x24]
call fcn.00512ca7
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50f189
push 0x54b
push 0x40ad828
push 4
call fcn.00519fa3
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50f1a6
push 0x54b
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x48]
push dword [ebx]
push dword [ebp - 0x1c]
call fcn.00512ca7
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50f1f6
push 0x54b
push 0x40ad828
push 4
call fcn.00519fa3
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50f213
push 0x54b
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
push dword [ebx]
push dword [ebp - 0x50]
push dword [ebp - 0x44]
call fcn.00512ce4
pop eax
pop ebx
pop ecx
jmp 0x50f0e7
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.005150ca
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x50f272
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x50f26e
imul eax, dword [ebx]
jmp 0x50f263
mov ecx, eax
test ecx, ecx
je 0x50f29a
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00519f97
add esp, 4
pop ebx
call fcn.00519f97
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x50f278
call fcn.00519f97
add esp, 4
mov eax, 0x630846
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.00515b19
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x512515
cmp dword [ebp - 4], 1
jne 0x50f411
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50f2fe
push 0x6bb
push 0x40ad828
push 4
call fcn.00519fa3
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50f31b
push 0x6bb
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 1
push 0x80000004
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x50f349
mov eax, 0x63084e
push eax
push 2
mov ebx, 0x51abc0
call fcn.00519fa9
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x50f3ff
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50f390
push 0x70a
push 0x40ad828
push 4
call fcn.00519fa3
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50f3ad
push 0x70a
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push 0x80000004
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x50f3db
mov eax, 0x63084e
push eax
push 2
mov ebx, 0x51abc0
call fcn.00519fa9
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x50f3ff
xor eax, eax
jmp 0x50f404
mov eax, 1
test eax, eax
je 0x50f411
jmp 0x51250d
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50f438
push 0x7b6
push 0x40ad828
push 4
call fcn.00519fa3
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50f455
push 0x7b6
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.00519f9d
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x630846
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x40]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
call fcn.005165de
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.00519f97
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x50f4ef
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x50f4d7
push 0x7f0
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x50f4ef
mov eax, 1
jmp 0x50f4f4
mov eax, 0
test eax, eax
je 0x51250d
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x50f52c
push 0x81b
push 0x40ad828
push 4
call fcn.00519fa3
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x50f549
push 0x81b
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov eax, dword [ebx]
test eax, eax
je 0x50f574
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x50f587
push ebx
call fcn.00519f97
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0xc]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x50f5d3
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x50f607
and eax, 0xff
jmp 0x50f65c
cmp ecx, 0x80000201
jne 0x50f612
cwde
jmp 0x50f65c
cmp ecx, 0x80000301
je 0x50f65c
cmp ecx, 0x80000401
je 0x50f65c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50f64c
cmp ecx, 0x80000601
je 0x50f651
push 0x8a3
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50f657
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x12d1150]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x50f698
mov ebx, dword [0x12d1150]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x50f698
mov eax, 1
jmp 0x50f69d
mov eax, 0
test eax, eax
je 0x50fdde
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x50f6cd
push 0xcc1
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x50f71e
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x50f706
push 0xcea
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x50f71e
mov eax, 1
jmp 0x50f723
mov eax, 0
test eax, eax
je 0x50fdd9
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50f753
push 0xd36
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50f8e1
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x50f798
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x50f7cc
and eax, 0xff
jmp 0x50f821
cmp ecx, 0x80000201
jne 0x50f7d7
cwde
jmp 0x50f821
cmp ecx, 0x80000301
je 0x50f821
cmp ecx, 0x80000401
je 0x50f821
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50f811
cmp ecx, 0x80000601
je 0x50f816
push 0xd82
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50f81c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x50f86d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x50f8c9
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50f909
push 0xdf2
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x50f9d5
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x50f961
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x50f9bd
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x50f9fd
push 0xe67
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x50fdd9
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.00512ca7
mov dword [ebp - 0x38], eax
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x50fa55
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x50fa95
and eax, 0xff
jmp 0x50faea
cmp ecx, 0x80000201
jne 0x50faa0
cwde
jmp 0x50faea
cmp ecx, 0x80000301
je 0x50faea
cmp ecx, 0x80000401
je 0x50faea
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50fada
cmp ecx, 0x80000601
je 0x50fadf
push 0xf00
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50fae5
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
push eax
push dword [ebp - 0x38]
call fcn.00512ca7
mov dword [ebp - 0x38], eax
push 8
call fcn.00519f9d
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x630846
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x38]
call fcn.005165de
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x50fb5c
push 0xfa3
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x50fcea
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x50fba1
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x50fbd5
and eax, 0xff
jmp 0x50fc2a
cmp ecx, 0x80000201
jne 0x50fbe0
cwde
jmp 0x50fc2a
cmp ecx, 0x80000301
je 0x50fc2a
cmp ecx, 0x80000401
je 0x50fc2a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50fc1a
cmp ecx, 0x80000601
je 0x50fc1f
push 0xfef
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50fc25
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x50fc76
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x50fcd2
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x50fd12
push 0x105f
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x50fdd9
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x50fd6a
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x50fdc6
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
jmp 0x51250d
mov ebx, dword [0x12d1150]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x511d2c
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [0x12d1150]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0xa
jne 0x50fe3f
mov ebx, dword [0x12d1150]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x50fe3f
mov eax, 1
jmp 0x50fe44
mov eax, 0
test eax, eax
je 0x510281
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x50fe74
push 0x16b1
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x50fec5
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x1f
cmp eax, ecx
jl 0x50fead
push 0x16da
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xba
jne 0x50fec5
mov eax, 1
jmp 0x50feca
mov eax, 0
test eax, eax
je 0x51004a
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x27
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x50ff06
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x50ff3a
and eax, 0xff
jmp 0x50ff8f
cmp ecx, 0x80000201
jne 0x50ff45
cwde
jmp 0x50ff8f
cmp ecx, 0x80000301
je 0x50ff8f
cmp ecx, 0x80000401
je 0x50ff8f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x50ff7f
cmp ecx, 0x80000601
je 0x50ff84
push 0x1727
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x50ff8a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x50ffdb
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x510037
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x510072
push 0x17b4
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x5100fc
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x5100ab
push 0x17dd
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x5100fc
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x5100e4
push 0x1806
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xd2
jne 0x5100fc
mov eax, 1
jmp 0x510101
mov eax, 0
test eax, eax
je 0x510281
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x51013d
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x510171
and eax, 0xff
jmp 0x5101c6
cmp ecx, 0x80000201
jne 0x51017c
cwde
jmp 0x5101c6
cmp ecx, 0x80000301
je 0x5101c6
cmp ecx, 0x80000401
je 0x5101c6
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x5101b6
cmp ecx, 0x80000601
je 0x5101bb
push 0x199e
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x5101c1
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x510212
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x51026e
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x5102a9
push 0x1a52
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x510333
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 6
cmp eax, ecx
jl 0x5102e2
push 0x1a7b
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x510333
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 8
cmp eax, ecx
jl 0x51031b
push 0x1aa4
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x510333
mov eax, 1
jmp 0x510338
mov eax, 0
test eax, eax
je 0x5105e5
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x510368
push 0x1bf6
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x5104f6
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x5103ad
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x5103e1
and eax, 0xff
jmp 0x510436
cmp ecx, 0x80000201
jne 0x5103ec
cwde
jmp 0x510436
cmp ecx, 0x80000301
je 0x510436
cmp ecx, 0x80000401
je 0x510436
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x510426
cmp ecx, 0x80000601
je 0x51042b
push 0x1c42
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x510431
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x510482
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x5104de
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x51051e
push 0x1cb2
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x5105e5
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x510576
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x5105d2
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x51060d
push 0x1d73
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x510697
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 7
cmp eax, ecx
jl 0x510646
push 0x1d9c
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x510697
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x51067f
push 0x1dc5
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x510697
mov eax, 1
jmp 0x51069c
mov eax, 0
test eax, eax
je 0x510b49
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x5106cc
push 0x21f8
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x51071a
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x510705
push 0x2221
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x51071a
xor eax, eax
jmp 0x51071f
mov eax, 1
test eax, eax
je 0x5107e2
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x51076e
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x5107ca
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x51080a
push 0x2293
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x510998
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x51084f
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x510883
and eax, 0xff
jmp 0x5108d8
cmp ecx, 0x80000201
jne 0x51088e
cwde
jmp 0x5108d8
cmp ecx, 0x80000301
je 0x5108d8
cmp ecx, 0x80000401
je 0x5108d8
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x5108c8
cmp ecx, 0x80000601
je 0x5108cd
push 0x22df
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x5108d3
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x510924
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x510980
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x5109c0
push 0x234f
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x510b49
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x510a05
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x510a39
and eax, 0xff
jmp 0x510a8e
cmp ecx, 0x80000201
jne 0x510a44
cwde
jmp 0x510a8e
cmp ecx, 0x80000301
je 0x510a8e
cmp ecx, 0x80000401
je 0x510a8e
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x510a7e
cmp ecx, 0x80000601
je 0x510a83
push 0x239b
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x510a89
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x510ada
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x510b36
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x510b71
push 0x246c
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x510bfb
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x510baa
push 0x2495
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x510bfb
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x510be3
push 0x24be
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x510bfb
mov eax, 1
jmp 0x510c00
mov eax, 0
test eax, eax
je 0x5110ad
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x510c30
push 0x28f7
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x510c7e
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x510c69
push 0x2920
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x510c7e
xor eax, eax
jmp 0x510c83
mov eax, 1
test eax, eax
je 0x510d46
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x510cd2
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x510d2e
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x510d6e
push 0x2992
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x510efc
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x510db3
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x510de7
and eax, 0xff
jmp 0x510e3c
cmp ecx, 0x80000201
jne 0x510df2
cwde
jmp 0x510e3c
cmp ecx, 0x80000301
je 0x510e3c
cmp ecx, 0x80000401
je 0x510e3c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x510e2c
cmp ecx, 0x80000601
je 0x510e31
push 0x29de
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x510e37
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x510e88
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x510ee4
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x510f24
push 0x2a4e
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x5110ad
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x510f69
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x510f9d
and eax, 0xff
jmp 0x510ff2
cmp ecx, 0x80000201
jne 0x510fa8
cwde
jmp 0x510ff2
cmp ecx, 0x80000301
je 0x510ff2
cmp ecx, 0x80000401
je 0x510ff2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x510fe2
cmp ecx, 0x80000601
je 0x510fe7
push 0x2a9a
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x510fed
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x51103e
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x51109a
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x5110d5
push 0x2b7c
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x51115f
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x51110e
push 0x2ba5
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x51115f
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xe
cmp eax, ecx
jl 0x511147
push 0x2bce
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x51115f
mov eax, 1
jmp 0x511164
mov eax, 0
test eax, eax
je 0x5116ea
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x5111a0
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x5111d4
and eax, 0xff
jmp 0x511229
cmp ecx, 0x80000201
jne 0x5111df
cwde
jmp 0x511229
cmp ecx, 0x80000301
je 0x511229
cmp ecx, 0x80000401
je 0x511229
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x511219
cmp ecx, 0x80000601
je 0x51121e
push 0x305e
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x511224
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x511256
push 0x30b0
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x5112a4
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x51128f
push 0x30d9
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x5112a4
xor eax, eax
jmp 0x5112a9
mov eax, 1
test eax, eax
je 0x51136c
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x5112f8
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x511354
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x511394
push 0x314b
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x511522
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x5113d9
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x51140d
and eax, 0xff
jmp 0x511462
cmp ecx, 0x80000201
jne 0x511418
cwde
jmp 0x511462
cmp ecx, 0x80000301
je 0x511462
cmp ecx, 0x80000401
je 0x511462
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x511452
cmp ecx, 0x80000601
je 0x511457
push 0x3197
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x51145d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x5114ae
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x51150a
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x51154a
push 0x3207
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x5116d8
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x51158f
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x5115c3
and eax, 0xff
jmp 0x511618
cmp ecx, 0x80000201
jne 0x5115ce
cwde
jmp 0x511618
cmp ecx, 0x80000301
je 0x511618
cmp ecx, 0x80000401
je 0x511618
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x511608
cmp ecx, 0x80000601
je 0x51160d
push 0x3253
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x511613
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x511664
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x5116c0
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x511712
push 0x3344
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x51179c
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x51174b
push 0x336d
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x51179c
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xe
cmp eax, ecx
jl 0x511784
push 0x3396
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x51179c
mov eax, 1
jmp 0x5117a1
mov eax, 0
test eax, eax
je 0x511d27
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xb
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x5117dd
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x511811
and eax, 0xff
jmp 0x511866
cmp ecx, 0x80000201
jne 0x51181c
cwde
jmp 0x511866
cmp ecx, 0x80000301
je 0x511866
cmp ecx, 0x80000401
je 0x511866
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x511856
cmp ecx, 0x80000601
je 0x51185b
push 0x381d
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x511861
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x511893
push 0x386f
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x5118e1
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x5118cc
push 0x3898
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x5118e1
xor eax, eax
jmp 0x5118e6
mov eax, 1
test eax, eax
je 0x5119a9
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x511935
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x511991
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x5119d1
push 0x390a
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x511b5f
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x511a16
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x511a4a
and eax, 0xff
jmp 0x511a9f
cmp ecx, 0x80000201
jne 0x511a55
cwde
jmp 0x511a9f
cmp ecx, 0x80000301
je 0x511a9f
cmp ecx, 0x80000401
je 0x511a9f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x511a8f
cmp ecx, 0x80000601
je 0x511a94
push 0x3956
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x511a9a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x511aeb
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x511b47
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x511b87
push 0x39c6
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x511d15
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x511bcc
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x511c00
and eax, 0xff
jmp 0x511c55
cmp ecx, 0x80000201
jne 0x511c0b
cwde
jmp 0x511c55
cmp ecx, 0x80000301
je 0x511c55
cmp ecx, 0x80000401
je 0x511c55
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x511c45
cmp ecx, 0x80000601
je 0x511c4a
push 0x3a12
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x511c50
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x511ca1
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x511cfd
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x511d54
push 0x3af5
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x51215f
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x511d90
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x511dc4
and eax, 0xff
jmp 0x511e19
cmp ecx, 0x80000201
jne 0x511dcf
cwde
jmp 0x511e19
cmp ecx, 0x80000301
je 0x511e19
cmp ecx, 0x80000401
je 0x511e19
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x511e09
cmp ecx, 0x80000601
je 0x511e0e
push 0x3f56
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x511e14
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.0040127a
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x511e37
cmp dword [ebp - 0x38], 0xa
jge 0x511e37
mov eax, 1
jmp 0x511e3c
mov eax, 0
test eax, eax
je 0x51215a
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.00512ca7
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x511e87
push 0x405d
push 0x40ad828
push 4
call fcn.00519fa3
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x511ea4
push 0x405d
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x51215a
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x511edd
push 0x40a9
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x51206b
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xc
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x511f22
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x511f56
and eax, 0xff
jmp 0x511fab
cmp ecx, 0x80000201
jne 0x511f61
cwde
jmp 0x511fab
cmp ecx, 0x80000301
je 0x511fab
cmp ecx, 0x80000401
je 0x511fab
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x511f9b
cmp ecx, 0x80000601
je 0x511fa0
push 0x40f5
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x511fa6
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x511ff7
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x512053
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x512093
push 0x4165
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x51215a
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x5120eb
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x512147
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x512187
push 0x4253
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x5121d8
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x5121c0
push 0x427c
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x5121d8
mov eax, 1
jmp 0x5121dd
mov eax, 0
test eax, eax
je 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x51220d
push 0x4678
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x51225b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x512246
push 0x46a1
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x51225b
xor eax, eax
jmp 0x512260
mov eax, 1
test eax, eax
je 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x512290
push 0x46ed
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x51241e
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x5122d5
mov eax, 0x630846
push eax
push 3
mov ebx, 0x51bf20
call fcn.00519fa9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x512309
and eax, 0xff
jmp 0x51235e
cmp ecx, 0x80000201
jne 0x512314
cwde
jmp 0x51235e
cmp ecx, 0x80000301
je 0x51235e
cmp ecx, 0x80000401
je 0x51235e
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x51234e
cmp ecx, 0x80000601
je 0x512353
push 0x4739
push 0x40ad828
push 2
call fcn.00519fa3
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x512359
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x5123aa
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x512406
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x512446
push 0x47a9
push 0x40ad828
push 1
call fcn.00519fa3
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x51250d
push 0x12d117c
push 4
mov eax, 2
call fcn.00519f91
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12d117c]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x51249e
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.00519fb5
add esp, 8
mov dword [0x12d117c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.00519f9d
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x5124fa
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00519f9d
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x51250d
pop eax
pop ebx
pop ecx
jmp 0x50f2bf
add esp, 0xc
mov dword [ebp - 0x3c], esp
push 0x8000
push 0
push dword [ebp - 0x24]
push 0xffffffff
mov eax, 0xe3
call fcn.00519faf
cmp dword [ebp - 0x3c], esp
je 0x512553
push 0x48ac
push 0x40ad828
push 6
call fcn.00519fa3
add esp, 0xc
pop ebx
pop ecx
jmp 0x50edb4
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x51256d
push ebx
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x512584
push ebx
call fcn.00519f97
add esp, 4
pop ebx
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x51259d
push ebx
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x5125ad
push ebx
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00519f97
add esp, 4
pop ebx
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x5125e7
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x5125e3
imul eax, dword [ebx]
jmp 0x5125d8
mov ecx, eax
test ecx, ecx
je 0x51260f
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00519f97
add esp, 4
pop ebx
call fcn.00519f97
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x5125ed
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x512635
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x512631
imul eax, dword [ebx]
jmp 0x512626
mov ecx, eax
test ecx, ecx
je 0x51268c
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x512653
push ebx
call fcn.00519f97
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x512667
push ebx
call fcn.00519f97
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x51267b
push ebx
call fcn.00519f97
add esp, 4
pop ebx
call fcn.00519f97
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x51263b
call fcn.00519f97
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x5126a4
push ebx
call fcn.00519f97
add esp, 4
mov esp, ebp
pop ebp
ret