Function at 0x40dff9
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x14
call fcn.004194a0
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.004194a0
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.004194a0
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0xa7cc8b
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.004194a0
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x4cf1f5
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.004194a0
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x4cf1f5
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 dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
mov ebx, dword [0xd357d8]
call fcn.00401066
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
jne 0x411f92
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 4
jg 0x411f8f
cmp dword [ebp - 4], 1
jne 0x40e144
mov eax, 0xa7cba5
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40e13b
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40e1c4
cmp dword [ebp - 4], 2
jne 0x40e16d
mov eax, 0xa7cbd7
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40e164
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40e1c4
cmp dword [ebp - 4], 3
jne 0x40e196
mov eax, 0xa7cbe2
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40e18d
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40e1c4
cmp dword [ebp - 4], 4
jne 0x40e1bf
mov eax, 0xa7cc73
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40e1b6
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40e1c4
jmp 0x411f92
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x44], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 1
lea eax, [ebp - 8]
push eax
call fcn.004120dd
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x44], 0
push 0
lea eax, [ebp - 0x44]
push eax
mov dword [ebp - 0x48], 0
push 0
lea eax, [ebp - 0x48]
push eax
call fcn.004120fb
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40e212
push ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x40e222
push ebx
call fcn.0041949a
add esp, 4
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40e236
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.0041221a
mov dword [ebp - 0x44], eax
push dword [ebp - 8]
push 0x4cf0c3
push dword [ebp - 0x44]
mov ecx, 3
call fcn.004010ea
add esp, 0xc
mov dword [ebp - 0x48], eax
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x40e26d
push ebx
call fcn.0041949a
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x48]
mov eax, 0x20
call fcn.004194b2
cmp dword [ebp - 0x4c], esp
je 0x40e2a1
push 0x2df
push 0x40351f2
push 6
call fcn.004194a6
add esp, 0xc
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40e2b1
push ebx
call fcn.0041949a
add esp, 4
push 0x80000004
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40e2c4
mov eax, 0x4cef58
push eax
push 1
mov ebx, 0x41b7c0
call fcn.004194ac
add esp, 0x10
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40e2ee
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.004079df
mov dword [ebp - 0x1c], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40e311
mov eax, 0x4cef58
push eax
push 1
mov ebx, 0x41b710
call fcn.004194ac
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.004122cb
test eax, eax
je 0x40e35a
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp word [ebx], 0x10b
jne 0x40e35a
mov eax, 1
jmp 0x40e35f
mov eax, 0
test eax, eax
je 0x411f88
mov dword [ebp - 0x24], 0
mov ebx, dword [ebp - 0x20]
add ebx, 0x3c
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
push 0x2000
push 0x1000
call fcn.004126b8
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x5c], esp
push 0x40
push dword [ebp - 0x58]
mov ebx, dword [ebp - 0x44]
push dword [ebx]
push 0
push 0xffffffff
mov eax, 0x21
call fcn.004194b2
cmp dword [ebp - 0x5c], esp
je 0x40e3f9
push 0x4ab
push 0x40351f2
push 6
call fcn.004194a6
add esp, 0xc
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x40
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov ebx, dword [ebp - 0x44]
push dword [ebx]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call fcn.004126db
push 8
call fcn.004194a0
add esp, 4
mov dword [ebp - 0x44], eax
mov edi, eax
mov esi, 0x4cf1f5
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x1c]
call fcn.00413ac2
mov dword [ebp - 0x48], eax
mov ebx, dword [ebp - 0x44]
push ebx
call fcn.0041949a
add esp, 4
mov eax, dword [ebp - 0x48]
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 0x40e5c6
mov ebx, dword [ebp - 0x28]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40e49e
push 0x592
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e4bb
push 0x592
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov ebx, dword [ebp - 0x44]
push dword [ebx]
push dword [ebp - 0x24]
call fcn.0040dc32
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40e50b
push 0x5c3
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e528
push 0x5c3
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov ebx, dword [ebp - 0x50]
push dword [ebx]
push dword [ebp - 0x1c]
call fcn.0040dc32
mov dword [ebp - 0x58], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40e578
push 0x5c3
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e595
push 0x5c3
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov ebx, dword [ebp - 0x5c]
push dword [ebx]
push dword [ebp - 0x58]
push dword [ebp - 0x4c]
call fcn.004126db
pop eax
pop ebx
pop ecx
jmp 0x40e469
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.0041484a
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40e5f4
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40e5f0
imul eax, dword [ebx]
jmp 0x40e5e5
mov ecx, eax
test ecx, ecx
je 0x40e61c
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041949a
add esp, 4
pop ebx
call fcn.0041949a
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40e5fa
call fcn.0041949a
add esp, 4
mov eax, 0x4cf1f5
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.00415299
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 0x411f4a
cmp dword [ebp - 0x2c], 4
jne 0x40ea05
mov ebx, dword [ebp - 0x30]
call fcn.00401066
xor ecx, ecx
push eax
lea eax, [ebp - 0x34]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40ea02
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x34]
dec eax
jns 0x40e69f
push 0x737
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e6bc
push 0x737
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 5
push 0x80000004
push 0
mov ebx, dword [ebp - 0x44]
mov eax, dword [ebx]
test eax, eax
jne 0x40e6ea
mov eax, 0x4cef58
push eax
push 2
mov ebx, 0x419c20
call fcn.004194ac
add esp, 0x1c
mov dword [ebp - 0x48], eax
push 0xa7cc7e
push dword [ebp - 0x48]
call fcn.00401b8e
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40e72e
push ebx
call fcn.0041949a
add esp, 4
cmp dword [ebp - 0x4c], 0
je 0x40e839
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x34]
dec eax
jns 0x40e75f
push 0x777
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e77c
push 0x777
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x34]
dec eax
jns 0x40e7b0
push 0x7a0
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e7cd
push 0x7a0
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x48], ebx
push 0x80000301
push 0
push 0x64
push 0x80000301
push 0
push 6
push 0x80000004
push 0
mov ebx, dword [ebp - 0x48]
mov eax, dword [ebx]
test eax, eax
jne 0x40e807
mov eax, 0x4cef58
push eax
push 3
mov ebx, 0x419cb0
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x44]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40e833
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x34]
dec eax
jns 0x40e860
push 0x803
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e87d
push 0x803
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 6
push 0x80000004
push 0
mov ebx, dword [ebp - 0x44]
mov eax, dword [ebx]
test eax, eax
jne 0x40e8ab
mov eax, 0x4cef58
push eax
push 2
mov ebx, 0x419c20
call fcn.004194ac
add esp, 0x1c
mov dword [ebp - 0x48], eax
push 0xa7cc84
push dword [ebp - 0x48]
call fcn.00401b8e
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40e8ef
push ebx
call fcn.0041949a
add esp, 4
cmp dword [ebp - 0x4c], 0
je 0x40e9fa
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x34]
dec eax
jns 0x40e920
push 0x844
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e93d
push 0x844
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x34]
dec eax
jns 0x40e971
push 0x86d
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40e98e
push 0x86d
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x48], ebx
push 0x80000301
push 0
push 0x64
push 0x80000301
push 0
push 7
push 0x80000004
push 0
mov ebx, dword [ebp - 0x48]
mov eax, dword [ebx]
test eax, eax
jne 0x40e9c8
mov eax, 0x4cef58
push eax
push 3
mov ebx, 0x419cb0
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x44]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40e9f4
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x40e66a
add esp, 0xc
cmp dword [ebp - 4], 1
jne 0x40eb49
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40ea36
push 0x992
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ea53
push 0x992
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 1
push 0x80000004
push 0
mov ebx, dword [ebp - 0x44]
mov eax, dword [ebx]
test eax, eax
jne 0x40ea81
mov eax, 0x4cef58
push eax
push 2
mov ebx, 0x419d40
call fcn.004194ac
add esp, 0x1c
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0x5a
jne 0x40eb37
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40eac8
push 0x9e1
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40eae5
push 0x9e1
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x54], ebx
push 0x80000301
push 0
push 2
push 0x80000004
push 0
mov ebx, dword [ebp - 0x54]
mov eax, dword [ebx]
test eax, eax
jne 0x40eb13
mov eax, 0x4cef58
push eax
push 2
mov ebx, 0x419d40
call fcn.004194ac
add esp, 0x1c
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0x77
jne 0x40eb37
xor eax, eax
jmp 0x40eb3c
mov eax, 1
test eax, eax
je 0x40eb49
jmp 0x411f42
mov ebx, dword [0xd357ac]
add ebx, 4
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0xa
jne 0x40eb72
cmp dword [ebp - 4], 4
jne 0x40eb72
mov eax, 1
jmp 0x40eb77
mov eax, 0
test eax, eax
je 0x40ee39
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40eba6
push 0xb37
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ebc3
push 0xb37
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x44], ebx
push 8
call fcn.004194a0
add esp, 4
mov dword [ebp - 0x48], eax
mov edi, eax
mov esi, 0x4cf1f5
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x48]
push eax
push 0x10
lea eax, [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x44]
push dword [ebx]
call fcn.00415d5e
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x48]
push ebx
call fcn.0041949a
add esp, 4
cmp dword [ebp - 0x4c], 0
je 0x40ec5d
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0
cmp eax, ecx
jl 0x40ec45
push 0xb72
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x50], ebx
mov ebx, dword [ebp - 0x50]
cmp byte [ebx], 0xe8
jne 0x40ec5d
mov eax, 1
jmp 0x40ec62
mov eax, 0
test eax, eax
je 0x40ee39
push 0x80000301
push 0
push 6
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40ec89
mov eax, 0x4cf1f5
push eax
push 2
mov ebx, 0x41ad00
call fcn.004194ac
add esp, 0x1c
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40ecb3
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
push 0x80000301
push 0
push 3
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40ece2
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], ecx
push 8
call fcn.004194a0
add esp, 4
mov dword [ebp - 0x50], eax
mov edi, eax
mov esi, 0x4cf1f5
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x3c]
push eax
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4c]
cmp ecx, 0x80000101
jne 0x40ed3b
and eax, 0xff
jmp 0x40ed90
cmp ecx, 0x80000201
jne 0x40ed46
cwde
jmp 0x40ed90
cmp ecx, 0x80000301
je 0x40ed90
cmp ecx, 0x80000401
je 0x40ed90
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x40ed80
cmp ecx, 0x80000601
je 0x40ed85
push 0xc54
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x40ed8b
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
push eax
call fcn.0041408e
mov ebx, dword [ebp - 0x50]
push ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40edc9
push 0xc85
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ede6
push 0xc85
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x44], ebx
mov eax, dword [ebp - 0x3c]
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 8
call fcn.004194a0
add esp, 4
mov dword [ebp - 0x44], eax
mov edi, eax
mov esi, 0x4cf1f5
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x44]
push eax
push 0x10
lea eax, [ebp - 0x38]
push eax
push dword [ebp - 0x3c]
call fcn.00415d5e
mov ebx, dword [ebp - 0x44]
push ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40ee60
push 0x146e
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ee7d
push 0x146e
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x44], ebx
push 8
call fcn.004194a0
add esp, 4
mov dword [ebp - 0x48], eax
mov edi, eax
mov esi, 0x4cf1f5
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x48]
push eax
push 0x20
lea eax, [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x44]
push dword [ebx]
call fcn.00415d5e
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x48]
push ebx
call fcn.0041949a
add esp, 4
cmp dword [ebp - 0x4c], 0
je 0x40ef17
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0
cmp eax, ecx
jl 0x40eeff
push 0x14a8
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x50], ebx
mov ebx, dword [ebp - 0x50]
cmp byte [ebx], 0xb8
jne 0x40ef17
mov eax, 1
jmp 0x40ef1c
mov eax, 0
test eax, eax
je 0x411f42
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x30]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40ef54
push 0x14d3
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ef71
push 0x14d3
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
mov eax, dword [ebx]
test eax, eax
je 0x40ef9c
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x44]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40efaf
push ebx
call fcn.0041949a
add esp, 4
pop eax
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
mov dword [ebx], 0
mov ebx, dword [ebp - 0xc]
add ebx, 8
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40effb
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x40f02f
and eax, 0xff
jmp 0x40f084
cmp ecx, 0x80000201
jne 0x40f03a
cwde
jmp 0x40f084
cmp ecx, 0x80000301
je 0x40f084
cmp ecx, 0x80000401
je 0x40f084
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x40f074
cmp ecx, 0x80000601
je 0x40f079
push 0x155b
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x40f07f
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
mov ebx, dword [0xd357ac]
add ebx, 4
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 5
jne 0x40f0c0
mov ebx, dword [0xd357ac]
add ebx, 8
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 0
jne 0x40f0c0
mov eax, 1
jmp 0x40f0c5
mov eax, 0
test eax, eax
je 0x40f806
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 9
cmp eax, ecx
jl 0x40f0f5
push 0x1979
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xcd
jne 0x40f146
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xa
cmp eax, ecx
jl 0x40f12e
push 0x19a2
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x2e
jne 0x40f146
mov eax, 1
jmp 0x40f14b
mov eax, 0
test eax, eax
je 0x40f801
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xb
cmp eax, ecx
jl 0x40f17b
push 0x19ee
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x40f309
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40f1c0
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x40f1f4
and eax, 0xff
jmp 0x40f249
cmp ecx, 0x80000201
jne 0x40f1ff
cwde
jmp 0x40f249
cmp ecx, 0x80000301
je 0x40f249
cmp ecx, 0x80000401
je 0x40f249
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x40f239
cmp ecx, 0x80000601
je 0x40f23e
push 0x1a3a
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x40f244
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40f295
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x40f2f1
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xb
cmp eax, ecx
jl 0x40f331
push 0x1aaa
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
jne 0x40f3fd
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40f389
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x40f3e5
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xb
cmp eax, ecx
jl 0x40f425
push 0x1b1f
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xe9
jne 0x40f801
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
push 0x10
push dword [ebp - 0x40]
call fcn.0040dc32
mov dword [ebp - 0x40], eax
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40f47d
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4c]
cmp ecx, 0x80000101
jne 0x40f4bd
and eax, 0xff
jmp 0x40f512
cmp ecx, 0x80000201
jne 0x40f4c8
cwde
jmp 0x40f512
cmp ecx, 0x80000301
je 0x40f512
cmp ecx, 0x80000401
je 0x40f512
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x40f502
cmp ecx, 0x80000601
je 0x40f507
push 0x1bb8
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x40f50d
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
push eax
push dword [ebp - 0x40]
call fcn.0040dc32
mov dword [ebp - 0x40], eax
push 8
call fcn.004194a0
add esp, 4
mov dword [ebp - 0x44], eax
mov edi, eax
mov esi, 0x4cf1f5
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x44]
push eax
push 0x20
lea eax, [ebp - 0x38]
push eax
push dword [ebp - 0x40]
call fcn.00415d5e
mov ebx, dword [ebp - 0x44]
push ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0
cmp eax, ecx
jl 0x40f584
push 0x1c5b
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x40f712
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40f5c9
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x40f5fd
and eax, 0xff
jmp 0x40f652
cmp ecx, 0x80000201
jne 0x40f608
cwde
jmp 0x40f652
cmp ecx, 0x80000301
je 0x40f652
cmp ecx, 0x80000401
je 0x40f652
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x40f642
cmp ecx, 0x80000601
je 0x40f647
push 0x1ca7
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x40f64d
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40f69e
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x40f6fa
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0
cmp eax, ecx
jl 0x40f73a
push 0x1d17
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
jne 0x40f801
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40f792
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x40f7ee
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
jmp 0x411f42
mov ebx, dword [0xd357ac]
add ebx, 0x1c
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
je 0x411761
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
mov dword [ebx], 0
mov ebx, dword [0xd357ac]
add ebx, 4
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0xa
jne 0x40fcb6
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0
cmp eax, ecx
jl 0x40f870
push 0x235a
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb8
jne 0x40f8fa
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x40f8a9
push 0x2383
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xe8
jne 0x40f8fa
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xa
cmp eax, ecx
jl 0x40f8e2
push 0x23ac
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x5a
jne 0x40f8fa
mov eax, 1
jmp 0x40f8ff
mov eax, 0
test eax, eax
je 0x40fa7f
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40f93b
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x40f96f
and eax, 0xff
jmp 0x40f9c4
cmp ecx, 0x80000201
jne 0x40f97a
cwde
jmp 0x40f9c4
cmp ecx, 0x80000301
je 0x40f9c4
cmp ecx, 0x80000401
je 0x40f9c4
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x40f9b4
cmp ecx, 0x80000601
je 0x40f9b9
push 0x2565
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x40f9bf
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40fa10
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x40fa6c
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x40faa7
push 0x2618
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xba
jne 0x40fb31
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xa
cmp eax, ecx
jl 0x40fae0
push 0x2641
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xff
jne 0x40fb31
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xb
cmp eax, ecx
jl 0x40fb19
push 0x266a
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xd2
jne 0x40fb31
mov eax, 1
jmp 0x40fb36
mov eax, 0
test eax, eax
je 0x40fcb6
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40fb72
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x40fba6
and eax, 0xff
jmp 0x40fbfb
cmp ecx, 0x80000201
jne 0x40fbb1
cwde
jmp 0x40fbfb
cmp ecx, 0x80000301
je 0x40fbfb
cmp ecx, 0x80000401
je 0x40fbfb
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x40fbeb
cmp ecx, 0x80000601
je 0x40fbf0
push 0x2802
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x40fbf6
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40fc47
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x40fca3
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x40fcde
push 0x28b6
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x64
jne 0x40fd68
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 6
cmp eax, ecx
jl 0x40fd17
push 0x28df
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xff
jne 0x40fd68
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 8
cmp eax, ecx
jl 0x40fd50
push 0x2908
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc0
jne 0x40fd68
mov eax, 1
jmp 0x40fd6d
mov eax, 0
test eax, eax
je 0x41001a
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xc
cmp eax, ecx
jl 0x40fd9d
push 0x2a5a
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x40ff2b
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40fde2
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x40fe16
and eax, 0xff
jmp 0x40fe6b
cmp ecx, 0x80000201
jne 0x40fe21
cwde
jmp 0x40fe6b
cmp ecx, 0x80000301
je 0x40fe6b
cmp ecx, 0x80000401
je 0x40fe6b
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x40fe5b
cmp ecx, 0x80000601
je 0x40fe60
push 0x2aa6
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x40fe66
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40feb7
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x40ff13
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xc
cmp eax, ecx
jl 0x40ff53
push 0x2b16
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
jne 0x41001a
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40ffab
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x410007
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x410042
push 0x2bd7
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x4100cc
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 7
cmp eax, ecx
jl 0x41007b
push 0x2c00
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x4100cc
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xb
cmp eax, ecx
jl 0x4100b4
push 0x2c29
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x64
jne 0x4100cc
mov eax, 1
jmp 0x4100d1
mov eax, 0
test eax, eax
je 0x41057e
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x12
cmp eax, ecx
jl 0x410101
push 0x305c
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x41014f
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x15
cmp eax, ecx
jl 0x41013a
push 0x3085
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x41014f
xor eax, eax
jmp 0x410154
mov eax, 1
test eax, eax
je 0x410217
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4101a3
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x4101ff
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x12
cmp eax, ecx
jl 0x41023f
push 0x30f7
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x4103cd
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x410284
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x4102b8
and eax, 0xff
jmp 0x41030d
cmp ecx, 0x80000201
jne 0x4102c3
cwde
jmp 0x41030d
cmp ecx, 0x80000301
je 0x41030d
cmp ecx, 0x80000401
je 0x41030d
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x4102fd
cmp ecx, 0x80000601
je 0x410302
push 0x3143
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x410308
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x410359
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x4103b5
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x15
cmp eax, ecx
jl 0x4103f5
push 0x31b3
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x41057e
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x41043a
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x41046e
and eax, 0xff
jmp 0x4104c3
cmp ecx, 0x80000201
jne 0x410479
cwde
jmp 0x4104c3
cmp ecx, 0x80000301
je 0x4104c3
cmp ecx, 0x80000401
je 0x4104c3
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x4104b3
cmp ecx, 0x80000601
je 0x4104b8
push 0x31ff
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x4104be
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x41050f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x41056b
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x4105a6
push 0x32d0
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x410630
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 9
cmp eax, ecx
jl 0x4105df
push 0x32f9
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x33
jne 0x410630
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xb
cmp eax, ecx
jl 0x410618
push 0x3322
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x64
jne 0x410630
mov eax, 1
jmp 0x410635
mov eax, 0
test eax, eax
je 0x410ae2
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x12
cmp eax, ecx
jl 0x410665
push 0x375b
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4106b3
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x15
cmp eax, ecx
jl 0x41069e
push 0x3784
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x4106b3
xor eax, eax
jmp 0x4106b8
mov eax, 1
test eax, eax
je 0x41077b
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x410707
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x410763
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x12
cmp eax, ecx
jl 0x4107a3
push 0x37f6
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x410931
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x4107e8
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x41081c
and eax, 0xff
jmp 0x410871
cmp ecx, 0x80000201
jne 0x410827
cwde
jmp 0x410871
cmp ecx, 0x80000301
je 0x410871
cmp ecx, 0x80000401
je 0x410871
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x410861
cmp ecx, 0x80000601
je 0x410866
push 0x3842
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x41086c
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4108bd
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x410919
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x15
cmp eax, ecx
jl 0x410959
push 0x38b2
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x410ae2
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x41099e
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x4109d2
and eax, 0xff
jmp 0x410a27
cmp ecx, 0x80000201
jne 0x4109dd
cwde
jmp 0x410a27
cmp ecx, 0x80000301
je 0x410a27
cmp ecx, 0x80000401
je 0x410a27
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x410a17
cmp ecx, 0x80000601
je 0x410a1c
push 0x38fe
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x410a22
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x410a73
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x410acf
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x410b0a
push 0x39e0
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x410b94
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xa
cmp eax, ecx
jl 0x410b43
push 0x3a09
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x410b94
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xe
cmp eax, ecx
jl 0x410b7c
push 0x3a32
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x64
jne 0x410b94
mov eax, 1
jmp 0x410b99
mov eax, 0
test eax, eax
je 0x41111f
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x410bd5
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x410c09
and eax, 0xff
jmp 0x410c5e
cmp ecx, 0x80000201
jne 0x410c14
cwde
jmp 0x410c5e
cmp ecx, 0x80000301
je 0x410c5e
cmp ecx, 0x80000401
je 0x410c5e
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x410c4e
cmp ecx, 0x80000601
je 0x410c53
push 0x3ec2
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x410c59
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x15
cmp eax, ecx
jl 0x410c8b
push 0x3f14
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x410cd9
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x18
cmp eax, ecx
jl 0x410cc4
push 0x3f3d
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x410cd9
xor eax, eax
jmp 0x410cde
mov eax, 1
test eax, eax
je 0x410da1
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x410d2d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x410d89
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x15
cmp eax, ecx
jl 0x410dc9
push 0x3faf
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x410f57
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x410e0e
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x410e42
and eax, 0xff
jmp 0x410e97
cmp ecx, 0x80000201
jne 0x410e4d
cwde
jmp 0x410e97
cmp ecx, 0x80000301
je 0x410e97
cmp ecx, 0x80000401
je 0x410e97
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x410e87
cmp ecx, 0x80000601
je 0x410e8c
push 0x3ffb
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x410e92
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x410ee3
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x410f3f
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x18
cmp eax, ecx
jl 0x410f7f
push 0x406b
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x41110d
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x410fc4
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x410ff8
and eax, 0xff
jmp 0x41104d
cmp ecx, 0x80000201
jne 0x411003
cwde
jmp 0x41104d
cmp ecx, 0x80000301
je 0x41104d
cmp ecx, 0x80000401
je 0x41104d
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x41103d
cmp ecx, 0x80000601
je 0x411042
push 0x40b7
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x411048
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x411099
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x4110f5
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x411147
push 0x41a8
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x4111d1
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 9
cmp eax, ecx
jl 0x411180
push 0x41d1
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb9
jne 0x4111d1
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xe
cmp eax, ecx
jl 0x4111b9
push 0x41fa
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x64
jne 0x4111d1
mov eax, 1
jmp 0x4111d6
mov eax, 0
test eax, eax
je 0x41175c
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0xb
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x411212
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x411246
and eax, 0xff
jmp 0x41129b
cmp ecx, 0x80000201
jne 0x411251
cwde
jmp 0x41129b
cmp ecx, 0x80000301
je 0x41129b
cmp ecx, 0x80000401
je 0x41129b
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x41128b
cmp ecx, 0x80000601
je 0x411290
push 0x4681
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x411296
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x15
cmp eax, ecx
jl 0x4112c8
push 0x46d3
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x411316
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x18
cmp eax, ecx
jl 0x411301
push 0x46fc
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x411316
xor eax, eax
jmp 0x41131b
mov eax, 1
test eax, eax
je 0x4113de
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x41136a
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x4113c6
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x15
cmp eax, ecx
jl 0x411406
push 0x476e
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x411594
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x41144b
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x41147f
and eax, 0xff
jmp 0x4114d4
cmp ecx, 0x80000201
jne 0x41148a
cwde
jmp 0x4114d4
cmp ecx, 0x80000301
je 0x4114d4
cmp ecx, 0x80000401
je 0x4114d4
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x4114c4
cmp ecx, 0x80000601
je 0x4114c9
push 0x47ba
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x4114cf
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x411520
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x41157c
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0x18
cmp eax, ecx
jl 0x4115bc
push 0x482a
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x41174a
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x411601
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x411635
and eax, 0xff
jmp 0x41168a
cmp ecx, 0x80000201
jne 0x411640
cwde
jmp 0x41168a
cmp ecx, 0x80000301
je 0x41168a
cmp ecx, 0x80000401
je 0x41168a
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x41167a
cmp ecx, 0x80000601
je 0x41167f
push 0x4876
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x411685
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4116d6
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x411732
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
mov dword [ebx], 0
jmp 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x411789
push 0x4959
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xe8
jne 0x411b94
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x4117c5
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], ecx
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4c]
cmp ecx, 0x80000101
jne 0x4117f9
and eax, 0xff
jmp 0x41184e
cmp ecx, 0x80000201
jne 0x411804
cwde
jmp 0x41184e
cmp ecx, 0x80000301
je 0x41184e
cmp ecx, 0x80000401
je 0x41184e
mov dword [ebp - 0x54], eax
cmp ecx, 0x80000501
je 0x41183e
cmp ecx, 0x80000601
je 0x411843
push 0x4dba
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x54]
jmp 0x411849
mov dword [ebp - 0x50], edx
fld qword [ebp - 0x54]
call fcn.00403a86
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jle 0x41186c
cmp dword [ebp - 0x40], 0xa
jge 0x41186c
mov eax, 1
jmp 0x411871
mov eax, 0
test eax, eax
je 0x411b8f
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
push 0xd
push dword [ebp - 0x40]
call fcn.0040dc32
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x38]
call fcn.00401146
push ebx
push ecx
mov eax, dword [ebp - 0x40]
dec eax
jns 0x4118bc
push 0x4ec1
push 0x40351f2
push 4
call fcn.004194a6
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4118d9
push 0x4ec1
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xf
jne 0x411b8f
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xa
cmp eax, ecx
jl 0x411912
push 0x4f0d
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x411aa0
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0xc
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x411957
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x41198b
and eax, 0xff
jmp 0x4119e0
cmp ecx, 0x80000201
jne 0x411996
cwde
jmp 0x4119e0
cmp ecx, 0x80000301
je 0x4119e0
cmp ecx, 0x80000401
je 0x4119e0
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x4119d0
cmp ecx, 0x80000601
je 0x4119d5
push 0x4f59
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x4119db
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x411a2c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x411a88
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xa
cmp eax, ecx
jl 0x411ac8
push 0x4fc9
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
jne 0x411b8f
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x411b20
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x411b7c
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
jmp 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 5
cmp eax, ecx
jl 0x411bbc
push 0x50b7
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xba
jne 0x411c0d
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xa
cmp eax, ecx
jl 0x411bf5
push 0x50e0
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xff
jne 0x411c0d
mov eax, 1
jmp 0x411c12
mov eax, 0
test eax, eax
je 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xb
cmp eax, ecx
jl 0x411c42
push 0x54dc
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x12
je 0x411c90
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xb
cmp eax, ecx
jl 0x411c7b
push 0x5505
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xd2
je 0x411c90
xor eax, eax
jmp 0x411c95
mov eax, 1
test eax, eax
je 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xc
cmp eax, ecx
jl 0x411cc5
push 0x5551
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc2
jne 0x411e53
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x411d0a
mov eax, 0x4cf1f5
push eax
push 3
mov ebx, 0x41ab80
call fcn.004194ac
add esp, 0x28
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp ecx, 0x80000101
jne 0x411d3e
and eax, 0xff
jmp 0x411d93
cmp ecx, 0x80000201
jne 0x411d49
cwde
jmp 0x411d93
cmp ecx, 0x80000301
je 0x411d93
cmp ecx, 0x80000401
je 0x411d93
mov dword [ebp - 0x58], eax
cmp ecx, 0x80000501
je 0x411d83
cmp ecx, 0x80000601
je 0x411d88
push 0x559d
push 0x40351f2
push 2
call fcn.004194a6
add esp, 0xc
fld dword [ebp - 0x58]
jmp 0x411d8e
mov dword [ebp - 0x54], edx
fld qword [ebp - 0x58]
call fcn.00403a86
mov ebx, dword [ebp - 0x44]
mov dword [ebx], eax
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x411ddf
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x411e3b
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
mov ebx, dword [ebp - 0x38]
call fcn.00401146
mov eax, 0xc
cmp eax, ecx
jl 0x411e7b
push 0x560d
push 0x40351f2
push 1
call fcn.004194a6
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
jne 0x411f42
push 0xd357d8
push 4
mov eax, 2
call fcn.00419494
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov ebx, dword [0xd357d8]
mov dword [ebp - 0x48], ebx
call fcn.00401146
mov dword [ebp - 0x4c], ecx
mov edi, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x411ed3
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x4c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x48]
call fcn.004194b8
add esp, 8
mov dword [0xd357d8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x4c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x44]
push edi
push eax
push 0x14
call fcn.004194a0
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 0x411f2f
push eax
mov ebx, eax
call fcn.0040107f
inc eax
push eax
call fcn.004194a0
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 0x411f42
pop eax
pop ebx
pop ecx
jmp 0x40e641
add esp, 0xc
mov dword [ebp - 0x44], esp
push 0x8000
push 0
push dword [ebp - 0x24]
push 0xffffffff
mov eax, 0x22
call fcn.004194b2
cmp dword [ebp - 0x44], esp
je 0x411f88
push 0x5710
push 0x40351f2
push 6
call fcn.004194a6
add esp, 0xc
pop ebx
pop ecx
jmp 0x40e10d
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x411fa2
push ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x411fb9
push ebx
call fcn.0041949a
add esp, 4
pop ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x411fd2
push ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x411fe2
push ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041949a
add esp, 4
pop ebx
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x41201c
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x412018
imul eax, dword [ebx]
jmp 0x41200d
mov ecx, eax
test ecx, ecx
je 0x412044
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041949a
add esp, 4
pop ebx
call fcn.0041949a
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x412022
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x41206a
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x412066
imul eax, dword [ebx]
jmp 0x41205b
mov ecx, eax
test ecx, ecx
je 0x4120c1
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x412088
push ebx
call fcn.0041949a
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x41209c
push ebx
call fcn.0041949a
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4120b0
push ebx
call fcn.0041949a
add esp, 4
pop ebx
call fcn.0041949a
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x412070
call fcn.0041949a
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x4120d9
push ebx
call fcn.0041949a
add esp, 4
mov esp, ebp
pop ebp
ret