Function at 0x412bce
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.004a707e
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.004a707e
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.004a707e
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5a69db
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.004a707e
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x5a5775
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.004a707e
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x5a5775
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 [0x6ef214]
call fcn.00403088
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x415dba
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x415db7
cmp dword [ebp - 4], 1
jne 0x412d0b
mov eax, 0x5a69bc
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x412d02
push ebx
call fcn.004a7078
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x412d62
cmp dword [ebp - 4], 2
jne 0x412d34
mov eax, 0x5a69c6
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x412d2b
push ebx
call fcn.004a7078
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x412d62
cmp dword [ebp - 4], 3
jne 0x412d5d
mov eax, 0x5a69d1
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x412d54
push ebx
call fcn.004a7078
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x412d62
jmp 0x415dba
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.00415f05
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.00416ed4
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x412db0
push ebx
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x412dc0
push ebx
call fcn.004a7078
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x412dd4
push ebx
call fcn.004a7078
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.00416fe9
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x5a5844
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.00401438
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x412e0b
push ebx
call fcn.004a7078
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0x21
call fcn.004a7090
cmp dword [ebp - 0x44], esp
je 0x412e35
push 6
call fcn.004a708a
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x412e45
push ebx
call fcn.004a7078
add esp, 4
push 0x80000004
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x412e58
mov eax, 0x5a5792
push eax
push 1
mov ebx, 0x4aa650
call fcn.004a7084
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x412e82
push ebx
call fcn.004a7078
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00417090
mov dword [ebp - 0x1c], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x412ea5
mov eax, 0x5a5792
push eax
push 1
mov ebx, 0x4aa610
call fcn.004a7084
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.004170b4
test eax, eax
je 0x412eee
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x412eee
mov eax, 1
jmp 0x412ef3
mov eax, 0
test eax, eax
je 0x415db0
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.0041744b
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 reloc.MSVFW32.dll_DrawDibDraw
mov eax, 0x22
call fcn.004a7090
cmp dword [ebp - 0x54], esp
je 0x412f83
push 6
call fcn.004a708a
add esp, 4
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.0041746e
push 8
call fcn.004a707e
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x5a5775
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.0041759b
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.004a7078
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 0x4130b7
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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.004128d3
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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.004128d3
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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.0041746e
pop eax
pop ebx
pop ecx
jmp 0x412ff3
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.00417ae3
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4130e5
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4130e1
imul eax, dword [ebx]
jmp 0x4130d6
mov ecx, eax
test ecx, ecx
je 0x41310d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004a7078
add esp, 4
pop ebx
call fcn.004a7078
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4130eb
call fcn.004a7078
add esp, 4
mov eax, 0x5a5775
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.004187ed
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 0x415d94
cmp dword [ebp - 4], 1
jne 0x41321e
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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 0x413189
mov eax, 0x5a5792
push eax
push 2
mov ebx, 0x4a7b00
call fcn.004a7084
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x41320c
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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 0x4131e8
mov eax, 0x5a5792
push eax
push 2
mov ebx, 0x4a7b00
call fcn.004a7084
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x41320c
xor eax, eax
jmp 0x413211
mov eax, 1
test eax, eax
je 0x41321e
jmp 0x415d8c
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.004a707e
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x5a5775
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.0041918b
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.004a7078
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x4132b1
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x4132b1
mov eax, 1
jmp 0x4132b6
mov eax, 0
test eax, eax
je 0x415d8c
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x2c]
dec eax
pop ebx
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 0x413303
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x413316
push ebx
call fcn.004a7078
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 0x413362
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x413396
and eax, 0xff
jmp 0x4133e1
cmp ecx, 0x80000201
jne 0x4133a1
cwde
jmp 0x4133e1
cmp ecx, 0x80000301
je 0x4133e1
cmp ecx, 0x80000401
je 0x4133e1
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4133d1
cmp ecx, 0x80000601
je 0x4133d6
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4133dc
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x6ef218]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x41341d
mov ebx, dword [0x6ef218]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x41341d
mov eax, 1
jmp 0x413422
mov eax, 0
test eax, eax
je 0x413a9d
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 9
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x413473
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x413473
mov eax, 1
jmp 0x413478
mov eax, 0
test eax, eax
je 0x413a98
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x413614
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 0x4134d5
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x413509
and eax, 0xff
jmp 0x413554
cmp ecx, 0x80000201
jne 0x413514
cwde
jmp 0x413554
cmp ecx, 0x80000301
je 0x413554
cmp ecx, 0x80000401
je 0x413554
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x413544
cmp ecx, 0x80000601
je 0x413549
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x41354f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x4135a0
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x4135fc
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4136f0
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x41367c
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x4136d8
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x413a98
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.004128d3
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 0x413758
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x413798
and eax, 0xff
jmp 0x4137e3
cmp ecx, 0x80000201
jne 0x4137a3
cwde
jmp 0x4137e3
cmp ecx, 0x80000301
je 0x4137e3
cmp ecx, 0x80000401
je 0x4137e3
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4137d3
cmp ecx, 0x80000601
je 0x4137d8
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4137de
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
push eax
push dword [ebp - 0x38]
call fcn.004128d3
mov dword [ebp - 0x38], eax
push 8
call fcn.004a707e
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x5a5775
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.0041918b
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4139c1
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 0x413882
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x4138b6
and eax, 0xff
jmp 0x413901
cmp ecx, 0x80000201
jne 0x4138c1
cwde
jmp 0x413901
cmp ecx, 0x80000301
je 0x413901
cmp ecx, 0x80000401
je 0x413901
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4138f1
cmp ecx, 0x80000601
je 0x4138f6
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4138fc
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x41394d
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x4139a9
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x413a98
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x413a29
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x413a85
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
jmp 0x415d8c
mov ebx, dword [0x6ef218]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x4156d4
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]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x413b31
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 7
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x413b31
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x413b31
mov eax, 1
jmp 0x413b36
mov eax, 0
test eax, eax
je 0x413f6f
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x12
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x413b84
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x413b84
xor eax, eax
jmp 0x413b89
mov eax, 1
test eax, eax
je 0x413c4c
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x413bd8
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x413c34
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x12
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x413de0
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 0x413ca1
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x413cd5
and eax, 0xff
jmp 0x413d20
cmp ecx, 0x80000201
jne 0x413ce0
cwde
jmp 0x413d20
cmp ecx, 0x80000301
je 0x413d20
cmp ecx, 0x80000401
je 0x413d20
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x413d10
cmp ecx, 0x80000601
je 0x413d15
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x413d1b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x413d6c
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x413dc8
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x413f6f
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 0x413e35
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x413e69
and eax, 0xff
jmp 0x413eb4
cmp ecx, 0x80000201
jne 0x413e74
cwde
jmp 0x413eb4
cmp ecx, 0x80000301
je 0x413eb4
cmp ecx, 0x80000401
je 0x413eb4
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x413ea4
cmp ecx, 0x80000601
je 0x413ea9
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x413eaf
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x413f00
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x413f5c
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x413fd9
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x413fd9
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xe
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x413fd9
mov eax, 1
jmp 0x413fde
mov eax, 0
test eax, eax
je 0x4144e6
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 0x41401a
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x41404e
and eax, 0xff
jmp 0x414099
cmp ecx, 0x80000201
jne 0x414059
cwde
jmp 0x414099
cmp ecx, 0x80000301
je 0x414099
cmp ecx, 0x80000401
je 0x414099
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x414089
cmp ecx, 0x80000601
je 0x41408e
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x414094
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4140e4
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x18
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4140e4
xor eax, eax
jmp 0x4140e9
mov eax, 1
test eax, eax
je 0x4141ac
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x414138
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x414194
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x414340
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 0x414201
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x414235
and eax, 0xff
jmp 0x414280
cmp ecx, 0x80000201
jne 0x414240
cwde
jmp 0x414280
cmp ecx, 0x80000301
je 0x414280
cmp ecx, 0x80000401
je 0x414280
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x414270
cmp ecx, 0x80000601
je 0x414275
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x41427b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x4142cc
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x414328
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x18
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4144d4
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 0x414395
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x4143c9
and eax, 0xff
jmp 0x414414
cmp ecx, 0x80000201
jne 0x4143d4
cwde
jmp 0x414414
cmp ecx, 0x80000301
je 0x414414
cmp ecx, 0x80000401
je 0x414414
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x414404
cmp ecx, 0x80000601
je 0x414409
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x41440f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x414460
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x4144bc
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
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]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x414550
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x414550
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xd2
jne 0x414550
mov eax, 1
jmp 0x414555
mov eax, 0
test eax, eax
je 0x4147c8
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4146f1
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 0x4145b2
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x4145e6
and eax, 0xff
jmp 0x414631
cmp ecx, 0x80000201
jne 0x4145f1
cwde
jmp 0x414631
cmp ecx, 0x80000301
je 0x414631
cmp ecx, 0x80000401
je 0x414631
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x414621
cmp ecx, 0x80000601
je 0x414626
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x41462c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x41467d
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x4146d9
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4147c8
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x414759
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x4147b5
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x414832
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 6
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 4
jne 0x414832
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x414832
mov eax, 1
jmp 0x414837
mov eax, 0
test eax, eax
je 0x4149ce
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x1c
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4149ce
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1e
push 0x80000301
push 0
push 2
push 0x80000005
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x414894
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x4148c8
and eax, 0xff
jmp 0x414913
cmp ecx, 0x80000201
jne 0x4148d3
cwde
jmp 0x414913
cmp ecx, 0x80000301
je 0x414913
cmp ecx, 0x80000401
je 0x414913
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x414903
cmp ecx, 0x80000601
je 0x414908
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x41490e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x41495f
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x4149bb
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x414a38
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 6
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x414a38
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 8
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x414a38
mov eax, 1
jmp 0x414a3d
mov eax, 0
test eax, eax
je 0x414cb0
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x414bd9
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 0x414a9a
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x414ace
and eax, 0xff
jmp 0x414b19
cmp ecx, 0x80000201
jne 0x414ad9
cwde
jmp 0x414b19
cmp ecx, 0x80000301
je 0x414b19
cmp ecx, 0x80000401
je 0x414b19
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x414b09
cmp ecx, 0x80000601
je 0x414b0e
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x414b14
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x414b65
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x414bc1
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x414cb0
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x414c41
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x414c9d
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x414d1a
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 9
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x414d1a
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x414d1a
mov eax, 1
jmp 0x414d1f
mov eax, 0
test eax, eax
je 0x415158
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x12
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x414d6d
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x414d6d
xor eax, eax
jmp 0x414d72
mov eax, 1
test eax, eax
je 0x414e35
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x414dc1
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x414e1d
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x12
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x414fc9
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 0x414e8a
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x414ebe
and eax, 0xff
jmp 0x414f09
cmp ecx, 0x80000201
jne 0x414ec9
cwde
jmp 0x414f09
cmp ecx, 0x80000301
je 0x414f09
cmp ecx, 0x80000401
je 0x414f09
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x414ef9
cmp ecx, 0x80000601
je 0x414efe
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x414f04
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x414f55
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x414fb1
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x415158
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 0x41501e
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x415052
and eax, 0xff
jmp 0x41509d
cmp ecx, 0x80000201
jne 0x41505d
cwde
jmp 0x41509d
cmp ecx, 0x80000301
je 0x41509d
cmp ecx, 0x80000401
je 0x41509d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x41508d
cmp ecx, 0x80000601
je 0x415092
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x415098
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x4150e9
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x415145
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x4151c2
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 9
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x4151c2
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xe
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x4151c2
mov eax, 1
jmp 0x4151c7
mov eax, 0
test eax, eax
je 0x4156cf
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 0x415203
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x415237
and eax, 0xff
jmp 0x415282
cmp ecx, 0x80000201
jne 0x415242
cwde
jmp 0x415282
cmp ecx, 0x80000301
je 0x415282
cmp ecx, 0x80000401
je 0x415282
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x415272
cmp ecx, 0x80000601
je 0x415277
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x41527d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4152cd
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x18
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4152cd
xor eax, eax
jmp 0x4152d2
mov eax, 1
test eax, eax
je 0x415395
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x415321
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x41537d
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x15
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x415529
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 0x4153ea
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x41541e
and eax, 0xff
jmp 0x415469
cmp ecx, 0x80000201
jne 0x415429
cwde
jmp 0x415469
cmp ecx, 0x80000301
je 0x415469
cmp ecx, 0x80000401
je 0x415469
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x415459
cmp ecx, 0x80000601
je 0x41545e
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x415464
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x4154b5
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x415511
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0x18
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4156bd
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 0x41557e
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x4155b2
and eax, 0xff
jmp 0x4155fd
cmp ecx, 0x80000201
jne 0x4155bd
cwde
jmp 0x4155fd
cmp ecx, 0x80000301
je 0x4155fd
cmp ecx, 0x80000401
je 0x4155fd
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4155ed
cmp ecx, 0x80000601
je 0x4155f2
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4155f8
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x415649
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x4156a5
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x415a78
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 0x415720
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x415754
and eax, 0xff
jmp 0x41579f
cmp ecx, 0x80000201
jne 0x41575f
cwde
jmp 0x41579f
cmp ecx, 0x80000301
je 0x41579f
cmp ecx, 0x80000401
je 0x41579f
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x41578f
cmp ecx, 0x80000601
je 0x415794
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x4c]
jmp 0x41579a
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.00402507
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x4157bd
cmp dword [ebp - 0x38], 0xa
jge 0x4157bd
mov eax, 1
jmp 0x4157c2
mov eax, 0
test eax, eax
je 0x415a73
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.004128d3
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
push ebx
mov eax, dword [ebp - 0x38]
dec eax
pop ebx
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x415a73
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x41599c
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 0x41585d
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x415891
and eax, 0xff
jmp 0x4158dc
cmp ecx, 0x80000201
jne 0x41589c
cwde
jmp 0x4158dc
cmp ecx, 0x80000301
je 0x4158dc
cmp ecx, 0x80000401
je 0x4158dc
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4158cc
cmp ecx, 0x80000601
je 0x4158d1
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x4158d7
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x415928
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x415984
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x415a73
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x415a04
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x415a60
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
jmp 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 5
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x415ac1
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xa
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x415ac1
mov eax, 1
jmp 0x415ac6
mov eax, 0
test eax, eax
je 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x415b14
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xb
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x415b14
xor eax, eax
jmp 0x415b19
mov eax, 1
test eax, eax
je 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x415cb5
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 0x415b76
mov eax, 0x5a5775
push eax
push 3
mov ebx, 0x4a8fc0
call fcn.004a7084
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 0x415baa
and eax, 0xff
jmp 0x415bf5
cmp ecx, 0x80000201
jne 0x415bb5
cwde
jmp 0x415bf5
cmp ecx, 0x80000301
je 0x415bf5
cmp ecx, 0x80000401
je 0x415bf5
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x415be5
cmp ecx, 0x80000601
je 0x415bea
push 2
call fcn.004a708a
add esp, 4
fld dword [ebp - 0x50]
jmp 0x415bf0
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402507
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x415c41
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x415c9d
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x415d8c
push 0x6ef214
push 4
mov eax, 2
call fcn.004a7072
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x6ef214]
mov dword [ebp - 0x40], ebx
call fcn.004011c8
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 0x415d1d
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.004a70ae
add esp, 8
mov dword [0x6ef214], 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.004a707e
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 0x415d79
push eax
mov ebx, eax
call fcn.004013cd
inc eax
push eax
call fcn.004a707e
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 0x415d8c
pop eax
pop ebx
pop ecx
jmp 0x413132
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push reloc.MSVFW32.dll_DrawDibDraw
call fcn.00419285
pop ebx
pop ecx
jmp 0x412cd4
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x415dca
push ebx
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x415de1
push ebx
call fcn.004a7078
add esp, 4
pop ebx
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x415dfa
push ebx
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x415e0a
push ebx
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004a7078
add esp, 4
pop ebx
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x415e44
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x415e40
imul eax, dword [ebx]
jmp 0x415e35
mov ecx, eax
test ecx, ecx
je 0x415e6c
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004a7078
add esp, 4
pop ebx
call fcn.004a7078
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x415e4a
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x415e92
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x415e8e
imul eax, dword [ebx]
jmp 0x415e83
mov ecx, eax
test ecx, ecx
je 0x415ee9
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x415eb0
push ebx
call fcn.004a7078
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x415ec4
push ebx
call fcn.004a7078
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x415ed8
push ebx
call fcn.004a7078
add esp, 4
pop ebx
call fcn.004a7078
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x415e98
call fcn.004a7078
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x415f01
push ebx
call fcn.004a7078
add esp, 4
mov esp, ebp
pop ebp
ret