Function at 0x402b46
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.0041b0e1
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.0041b0e1
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.0041b0e1
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5463ef
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.0041b0e1
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x546393
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.0041b0e1
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x546393
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 [0x1a0b408]
call fcn.004027a3
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x405f5a
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x405f57
cmp dword [ebp - 4], 1
jne 0x402c83
mov eax, 0x546318
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402c7a
push ebx
call fcn.0041b0e7
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x402cda
cmp dword [ebp - 4], 2
jne 0x402cac
mov eax, 0x5463da
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402ca3
push ebx
call fcn.0041b0e7
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x402cda
cmp dword [ebp - 4], 3
jne 0x402cd5
mov eax, 0x5463e5
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402ccc
push ebx
call fcn.0041b0e7
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x402cda
jmp 0x405f5a
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.00401c37
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.004060a5
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x402d28
push ebx
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x402d38
push ebx
call fcn.0041b0e7
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x402d4c
push ebx
call fcn.0041b0e7
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.004061e9
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x546391
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.00401bdb
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x402d83
push ebx
call fcn.0041b0e7
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 4
call fcn.0041b0f3
cmp dword [ebp - 0x44], esp
je 0x402db7
push 0x267
push 0x4011d1d
push 6
call fcn.0041b0ed
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x402dc7
push ebx
call fcn.0041b0e7
add esp, 4
push 0x80000004
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x402dda
mov eax, 0x546317
push eax
push 1
mov ebx, 0x41ce00
call fcn.0041b0f9
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x402e04
push ebx
call fcn.0041b0e7
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0040629a
mov dword [ebp - 0x1c], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x402e27
mov eax, 0x546317
push eax
push 1
mov ebx, 0x41cdc0
call fcn.0041b0f9
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.004062be
test eax, eax
je 0x402e70
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x402e70
mov eax, 1
jmp 0x402e75
mov eax, 0
test eax, eax
je 0x405f50
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.0040677d
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], esp
push 0x40
push dword [ebp - 0x50]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push 0
push 0xffffffff
mov eax, 5
call fcn.0041b0f3
cmp dword [ebp - 0x54], esp
je 0x402f0f
push 0x433
push 0x4011d1d
push 6
call fcn.0041b0ed
add esp, 0xc
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x40
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call fcn.004067a0
push 8
call fcn.0041b0e1
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x546393
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.00406a29
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0041b0e7
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 0x4030dc
mov ebx, dword [ebp - 0x28]
call fcn.00401065
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x402fb4
push 0x51a
push 0x4011d1d
push 4
call fcn.0041b0ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x402fd1
push 0x51a
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x24]
call fcn.00402766
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401065
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403021
push 0x54c
push 0x4011d1d
push 4
call fcn.0041b0ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40303e
push 0x54c
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x48]
push dword [ebx]
push dword [ebp - 0x1c]
call fcn.00402766
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401065
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40308e
push 0x54c
push 0x4011d1d
push 4
call fcn.0041b0ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4030ab
push 0x54c
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
push dword [ebx]
push dword [ebp - 0x50]
push dword [ebp - 0x44]
call fcn.004067a0
pop eax
pop ebx
pop ecx
jmp 0x402f7f
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.00407276
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40310a
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x403106
imul eax, dword [ebx]
jmp 0x4030fb
mov ecx, eax
test ecx, ecx
je 0x403132
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041b0e7
add esp, 4
pop ebx
call fcn.0041b0e7
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x403110
call fcn.0041b0e7
add esp, 4
mov eax, 0x546393
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.00408467
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 0x405f34
cmp dword [ebp - 4], 1
jne 0x4032a9
mov ebx, dword [ebp - 0x30]
call fcn.00401065
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403196
push 0x6bd
push 0x4011d1d
push 4
call fcn.0041b0ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4031b3
push 0x6bd
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 1
push 0x80000004
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x4031e1
mov eax, 0x546317
push eax
push 2
mov ebx, 0x41b7b0
call fcn.0041b0f9
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x403297
mov ebx, dword [ebp - 0x30]
call fcn.00401065
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x403228
push 0x70c
push 0x4011d1d
push 4
call fcn.0041b0ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403245
push 0x70c
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push 0x80000004
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x403273
mov eax, 0x546317
push eax
push 2
mov ebx, 0x41b7b0
call fcn.0041b0f9
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x403297
xor eax, eax
jmp 0x40329c
mov eax, 1
test eax, eax
je 0x4032a9
jmp 0x405f2c
mov ebx, dword [ebp - 0x30]
call fcn.00401065
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4032d0
push 0x7b8
push 0x4011d1d
push 4
call fcn.0041b0ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4032ed
push 0x7b8
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.0041b0e1
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x546393
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.0040907d
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.0041b0e7
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x403387
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0
cmp eax, ecx
jl 0x40336f
push 0x7f2
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x403387
mov eax, 1
jmp 0x40338c
mov eax, 0
test eax, eax
je 0x405f2c
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.00401065
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4033c4
push 0x81d
push 0x4011d1d
push 4
call fcn.0041b0ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4033e1
push 0x81d
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov eax, dword [ebx]
test eax, eax
je 0x40340c
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x40341f
push ebx
call fcn.0041b0e7
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 0x40346b
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x40349f
and eax, 0xff
jmp 0x4034f4
cmp ecx, 0x80000201
jne 0x4034aa
cwde
jmp 0x4034f4
cmp ecx, 0x80000301
je 0x4034f4
cmp ecx, 0x80000401
je 0x4034f4
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4034e4
cmp ecx, 0x80000601
je 0x4034e9
push 0x8a5
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4034ef
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x1a0b3ec]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x403530
mov ebx, dword [0x1a0b3ec]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x403530
mov eax, 1
jmp 0x403535
mov eax, 0
test eax, eax
je 0x403c76
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 9
cmp eax, ecx
jl 0x403565
push 0xcc3
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x4035b6
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xa
cmp eax, ecx
jl 0x40359e
push 0xcec
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x4035b6
mov eax, 1
jmp 0x4035bb
mov eax, 0
test eax, eax
je 0x403c71
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xb
cmp eax, ecx
jl 0x4035eb
push 0xd38
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403779
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 0x403630
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x403664
and eax, 0xff
jmp 0x4036b9
cmp ecx, 0x80000201
jne 0x40366f
cwde
jmp 0x4036b9
cmp ecx, 0x80000301
je 0x4036b9
cmp ecx, 0x80000401
je 0x4036b9
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4036a9
cmp ecx, 0x80000601
je 0x4036ae
push 0xd84
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4036b4
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x403705
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x403761
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xb
cmp eax, ecx
jl 0x4037a1
push 0xdf4
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40386d
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x4037f9
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x403855
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xb
cmp eax, ecx
jl 0x403895
push 0xe69
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x403c71
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.00402766
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 0x4038ed
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x40392d
and eax, 0xff
jmp 0x403982
cmp ecx, 0x80000201
jne 0x403938
cwde
jmp 0x403982
cmp ecx, 0x80000301
je 0x403982
cmp ecx, 0x80000401
je 0x403982
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403972
cmp ecx, 0x80000601
je 0x403977
push 0xf03
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40397d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
push eax
push dword [ebp - 0x38]
call fcn.00402766
mov dword [ebp - 0x38], eax
push 8
call fcn.0041b0e1
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x546393
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.0040907d
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0
cmp eax, ecx
jl 0x4039f4
push 0xfa7
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403b82
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 0x403a39
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x403a6d
and eax, 0xff
jmp 0x403ac2
cmp ecx, 0x80000201
jne 0x403a78
cwde
jmp 0x403ac2
cmp ecx, 0x80000301
je 0x403ac2
cmp ecx, 0x80000401
je 0x403ac2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403ab2
cmp ecx, 0x80000601
je 0x403ab7
push 0xff3
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403abd
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x403b0e
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x403b6a
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0
cmp eax, ecx
jl 0x403baa
push 0x1063
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x403c71
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x403c02
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x403c5e
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
jmp 0x405f2c
mov ebx, dword [0x1a0b3ec]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x40574b
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 5
cmp eax, ecx
jl 0x403cc8
push 0x11a7
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x403d52
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 6
cmp eax, ecx
jl 0x403d01
push 0x11d0
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x403d52
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 8
cmp eax, ecx
jl 0x403d3a
push 0x11f9
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x403d52
mov eax, 1
jmp 0x403d57
mov eax, 0
test eax, eax
je 0x404004
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xc
cmp eax, ecx
jl 0x403d87
push 0x134b
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403f15
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 0x403dcc
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x403e00
and eax, 0xff
jmp 0x403e55
cmp ecx, 0x80000201
jne 0x403e0b
cwde
jmp 0x403e55
cmp ecx, 0x80000301
je 0x403e55
cmp ecx, 0x80000401
je 0x403e55
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403e45
cmp ecx, 0x80000601
je 0x403e4a
push 0x1397
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403e50
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x403ea1
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x403efd
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xc
cmp eax, ecx
jl 0x403f3d
push 0x1407
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x404004
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x403f95
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x403ff1
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 5
cmp eax, ecx
jl 0x40402c
push 0x14c8
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x4040b6
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 7
cmp eax, ecx
jl 0x404065
push 0x14f1
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x4040b6
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xb
cmp eax, ecx
jl 0x40409e
push 0x151a
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x4040b6
mov eax, 1
jmp 0x4040bb
mov eax, 0
test eax, eax
je 0x404568
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x12
cmp eax, ecx
jl 0x4040eb
push 0x194d
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x404139
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x15
cmp eax, ecx
jl 0x404124
push 0x1976
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x404139
xor eax, eax
jmp 0x40413e
mov eax, 1
test eax, eax
je 0x404201
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x40418d
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x4041e9
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x12
cmp eax, ecx
jl 0x404229
push 0x19e8
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4043b7
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 0x40426e
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x4042a2
and eax, 0xff
jmp 0x4042f7
cmp ecx, 0x80000201
jne 0x4042ad
cwde
jmp 0x4042f7
cmp ecx, 0x80000301
je 0x4042f7
cmp ecx, 0x80000401
je 0x4042f7
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4042e7
cmp ecx, 0x80000601
je 0x4042ec
push 0x1a34
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4042f2
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x404343
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x40439f
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x15
cmp eax, ecx
jl 0x4043df
push 0x1aa4
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404568
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 0x404424
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x404458
and eax, 0xff
jmp 0x4044ad
cmp ecx, 0x80000201
jne 0x404463
cwde
jmp 0x4044ad
cmp ecx, 0x80000301
je 0x4044ad
cmp ecx, 0x80000401
je 0x4044ad
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40449d
cmp ecx, 0x80000601
je 0x4044a2
push 0x1af0
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4044a8
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x4044f9
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x404555
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 5
cmp eax, ecx
jl 0x404590
push 0x1bc1
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x40461a
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 9
cmp eax, ecx
jl 0x4045c9
push 0x1bea
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x40461a
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xb
cmp eax, ecx
jl 0x404602
push 0x1c13
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40461a
mov eax, 1
jmp 0x40461f
mov eax, 0
test eax, eax
je 0x404acc
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x12
cmp eax, ecx
jl 0x40464f
push 0x204c
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40469d
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x15
cmp eax, ecx
jl 0x404688
push 0x2075
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40469d
xor eax, eax
jmp 0x4046a2
mov eax, 1
test eax, eax
je 0x404765
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x4046f1
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x40474d
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x12
cmp eax, ecx
jl 0x40478d
push 0x20e7
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40491b
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 0x4047d2
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x404806
and eax, 0xff
jmp 0x40485b
cmp ecx, 0x80000201
jne 0x404811
cwde
jmp 0x40485b
cmp ecx, 0x80000301
je 0x40485b
cmp ecx, 0x80000401
je 0x40485b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40484b
cmp ecx, 0x80000601
je 0x404850
push 0x2133
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404856
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x4048a7
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x404903
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x15
cmp eax, ecx
jl 0x404943
push 0x21a3
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404acc
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 0x404988
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x4049bc
and eax, 0xff
jmp 0x404a11
cmp ecx, 0x80000201
jne 0x4049c7
cwde
jmp 0x404a11
cmp ecx, 0x80000301
je 0x404a11
cmp ecx, 0x80000401
je 0x404a11
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404a01
cmp ecx, 0x80000601
je 0x404a06
push 0x21ef
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404a0c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x404a5d
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x404ab9
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 5
cmp eax, ecx
jl 0x404af4
push 0x22d1
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x404b7e
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xa
cmp eax, ecx
jl 0x404b2d
push 0x22fa
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x404b7e
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xe
cmp eax, ecx
jl 0x404b66
push 0x2323
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x404b7e
mov eax, 1
jmp 0x404b83
mov eax, 0
test eax, eax
je 0x405109
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 0x404bbf
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x404bf3
and eax, 0xff
jmp 0x404c48
cmp ecx, 0x80000201
jne 0x404bfe
cwde
jmp 0x404c48
cmp ecx, 0x80000301
je 0x404c48
cmp ecx, 0x80000401
je 0x404c48
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404c38
cmp ecx, 0x80000601
je 0x404c3d
push 0x27b3
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404c43
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x15
cmp eax, ecx
jl 0x404c75
push 0x2805
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x404cc3
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x18
cmp eax, ecx
jl 0x404cae
push 0x282e
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x404cc3
xor eax, eax
jmp 0x404cc8
mov eax, 1
test eax, eax
je 0x404d8b
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x404d17
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x404d73
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x15
cmp eax, ecx
jl 0x404db3
push 0x28a0
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404f41
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 0x404df8
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x404e2c
and eax, 0xff
jmp 0x404e81
cmp ecx, 0x80000201
jne 0x404e37
cwde
jmp 0x404e81
cmp ecx, 0x80000301
je 0x404e81
cmp ecx, 0x80000401
je 0x404e81
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404e71
cmp ecx, 0x80000601
je 0x404e76
push 0x28ec
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404e7c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x404ecd
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x404f29
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x18
cmp eax, ecx
jl 0x404f69
push 0x295c
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4050f7
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 0x404fae
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x404fe2
and eax, 0xff
jmp 0x405037
cmp ecx, 0x80000201
jne 0x404fed
cwde
jmp 0x405037
cmp ecx, 0x80000301
je 0x405037
cmp ecx, 0x80000401
je 0x405037
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405027
cmp ecx, 0x80000601
je 0x40502c
push 0x29a8
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405032
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x405083
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x4050df
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 5
cmp eax, ecx
jl 0x405131
push 0x2a99
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x4051bb
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 9
cmp eax, ecx
jl 0x40516a
push 0x2ac2
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x4051bb
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xe
cmp eax, ecx
jl 0x4051a3
push 0x2aeb
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x4051bb
mov eax, 1
jmp 0x4051c0
mov eax, 0
test eax, eax
je 0x405746
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 0x4051fc
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x405230
and eax, 0xff
jmp 0x405285
cmp ecx, 0x80000201
jne 0x40523b
cwde
jmp 0x405285
cmp ecx, 0x80000301
je 0x405285
cmp ecx, 0x80000401
je 0x405285
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405275
cmp ecx, 0x80000601
je 0x40527a
push 0x2f72
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405280
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x15
cmp eax, ecx
jl 0x4052b2
push 0x2fc4
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x405300
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x18
cmp eax, ecx
jl 0x4052eb
push 0x2fed
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x405300
xor eax, eax
jmp 0x405305
mov eax, 1
test eax, eax
je 0x4053c8
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x405354
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x4053b0
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x15
cmp eax, ecx
jl 0x4053f0
push 0x305f
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40557e
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 0x405435
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x405469
and eax, 0xff
jmp 0x4054be
cmp ecx, 0x80000201
jne 0x405474
cwde
jmp 0x4054be
cmp ecx, 0x80000301
je 0x4054be
cmp ecx, 0x80000401
je 0x4054be
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4054ae
cmp ecx, 0x80000601
je 0x4054b3
push 0x30ab
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4054b9
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x40550a
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x405566
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0x18
cmp eax, ecx
jl 0x4055a6
push 0x311b
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405734
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 0x4055eb
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x40561f
and eax, 0xff
jmp 0x405674
cmp ecx, 0x80000201
jne 0x40562a
cwde
jmp 0x405674
cmp ecx, 0x80000301
je 0x405674
cmp ecx, 0x80000401
je 0x405674
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405664
cmp ecx, 0x80000601
je 0x405669
push 0x3167
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40566f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x4056c0
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x40571c
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 5
cmp eax, ecx
jl 0x405773
push 0x324a
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x405b7e
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 0x4057af
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x4057e3
and eax, 0xff
jmp 0x405838
cmp ecx, 0x80000201
jne 0x4057ee
cwde
jmp 0x405838
cmp ecx, 0x80000301
je 0x405838
cmp ecx, 0x80000401
je 0x405838
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x405828
cmp ecx, 0x80000601
je 0x40582d
push 0x36ab
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x405833
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.00402485
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x405856
cmp dword [ebp - 0x38], 0xa
jge 0x405856
mov eax, 1
jmp 0x40585b
mov eax, 0
test eax, eax
je 0x405b79
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.00402766
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401065
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x4058a6
push 0x37b2
push 0x4011d1d
push 4
call fcn.0041b0ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4058c3
push 0x37b2
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x405b79
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xa
cmp eax, ecx
jl 0x4058fc
push 0x37fe
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405a8a
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 0x405941
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x405975
and eax, 0xff
jmp 0x4059ca
cmp ecx, 0x80000201
jne 0x405980
cwde
jmp 0x4059ca
cmp ecx, 0x80000301
je 0x4059ca
cmp ecx, 0x80000401
je 0x4059ca
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4059ba
cmp ecx, 0x80000601
je 0x4059bf
push 0x384a
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4059c5
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x405a16
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x405a72
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xa
cmp eax, ecx
jl 0x405ab2
push 0x38ba
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x405b79
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x405b0a
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x405b66
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
jmp 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 5
cmp eax, ecx
jl 0x405ba6
push 0x39a8
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x405bf7
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xa
cmp eax, ecx
jl 0x405bdf
push 0x39d1
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x405bf7
mov eax, 1
jmp 0x405bfc
mov eax, 0
test eax, eax
je 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xb
cmp eax, ecx
jl 0x405c2c
push 0x3dcd
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x405c7a
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xb
cmp eax, ecx
jl 0x405c65
push 0x3df6
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x405c7a
xor eax, eax
jmp 0x405c7f
mov eax, 1
test eax, eax
je 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xc
cmp eax, ecx
jl 0x405caf
push 0x3e42
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405e3d
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 0x405cf4
mov eax, 0x546393
push eax
push 3
mov ebx, 0x41c640
call fcn.0041b0f9
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 0x405d28
and eax, 0xff
jmp 0x405d7d
cmp ecx, 0x80000201
jne 0x405d33
cwde
jmp 0x405d7d
cmp ecx, 0x80000301
je 0x405d7d
cmp ecx, 0x80000401
je 0x405d7d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405d6d
cmp ecx, 0x80000601
je 0x405d72
push 0x3e8e
push 0x4011d1d
push 2
call fcn.0041b0ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405d78
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00402485
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x405dc9
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x405e25
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
mov ebx, dword [ebp - 0x34]
call fcn.00401065
mov eax, 0xc
cmp eax, ecx
jl 0x405e65
push 0x3efe
push 0x4011d1d
push 1
call fcn.0041b0ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x405f2c
push 0x1a0b408
push 4
mov eax, 2
call fcn.0041b0db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1a0b408]
mov dword [ebp - 0x40], ebx
call fcn.00401065
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 0x405ebd
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.0041b105
add esp, 8
mov dword [0x1a0b408], 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.0041b0e1
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 0x405f19
push eax
mov ebx, eax
call fcn.00401b70
inc eax
push eax
call fcn.0041b0e1
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 0x405f2c
pop eax
pop ebx
pop ecx
jmp 0x403157
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.00409177
pop ebx
pop ecx
jmp 0x402c4c
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405f6a
push ebx
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x405f81
push ebx
call fcn.0041b0e7
add esp, 4
pop ebx
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x405f9a
push ebx
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x405faa
push ebx
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041b0e7
add esp, 4
pop ebx
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405fe4
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405fe0
imul eax, dword [ebx]
jmp 0x405fd5
mov ecx, eax
test ecx, ecx
je 0x40600c
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041b0e7
add esp, 4
pop ebx
call fcn.0041b0e7
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405fea
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x406032
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40602e
imul eax, dword [ebx]
jmp 0x406023
mov ecx, eax
test ecx, ecx
je 0x406089
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406050
push ebx
call fcn.0041b0e7
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406064
push ebx
call fcn.0041b0e7
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406078
push ebx
call fcn.0041b0e7
add esp, 4
pop ebx
call fcn.0041b0e7
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x406038
call fcn.0041b0e7
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x4060a1
push ebx
call fcn.0041b0e7
add esp, 4
mov esp, ebp
pop ebp
ret