Function at 0x42fdce
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x80
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
push 8
call fcn.0043fcb6
add esp, 4
mov dword [ebp - 0x1c], eax
mov edi, eax
mov esi, 0x4e1fa7
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
push 8
call fcn.0043fcb6
add esp, 4
mov dword [ebp - 0x34], eax
mov edi, eax
mov esi, 0x4e1fa7
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
cmp dword [0x9dd704], 0x600
jge 0x42fe9e
mov eax, 0
jmp 0x43146e
mov ebx, dword [ebp + 0x40]
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x42febe
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x42feba
imul eax, dword [ebx]
jmp 0x42feaf
mov ecx, eax
test ecx, ecx
je 0x42fedd
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x42fed6
push ebx
push eax
call fcn.0043fcbc
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x42fec4
call fcn.0043fcbc
add esp, 4
mov eax, 0x4e1fa7
mov ebx, dword [ebp + 0x40]
mov dword [ebx], eax
mov dword [ebp - 0x50], esp
push 0
mov eax, 0x24
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x42ff1d
push 0x82
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
cmp dword [ebp + 0x10], 0
je 0x42ffb4
mov eax, 0x4e8419
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
call fcn.00403b4e
mov dword [ebp - 0x54], eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x42ff4b
push ebx
call fcn.0043fcbc
add esp, 4
mov eax, 0x4e8431
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x58]
push eax
call fcn.00403b4e
mov dword [ebp - 0x5c], eax
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x42ff6f
push ebx
call fcn.0043fcbc
add esp, 4
mov dword [ebp - 0x60], esp
lea eax, [ebp - 8]
push eax
push dword [ebp - 0x5c]
push 1
push 0
push dword [ebp - 0x54]
mov eax, 0x2b
call fcn.0043fcce
cmp dword [ebp - 0x60], esp
je 0x42ffac
push 0x101
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
mov dword [ebp - 4], eax
jmp 0x43003c
mov eax, 0x4e8449
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
call fcn.00403b4e
mov dword [ebp - 0x54], eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x42ffd8
push ebx
call fcn.0043fcbc
add esp, 4
mov eax, 0x4e8461
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x58]
push eax
call fcn.00403b4e
mov dword [ebp - 0x5c], eax
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x42fffc
push ebx
call fcn.0043fcbc
add esp, 4
mov dword [ebp - 0x60], esp
lea eax, [ebp - 8]
push eax
push dword [ebp - 0x5c]
push 1
push 0
push dword [ebp - 0x54]
mov eax, 0x2b
call fcn.0043fcce
cmp dword [ebp - 0x60], esp
je 0x430039
push 0x170
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x430057
cmp dword [ebp - 8], 0
je 0x430057
mov eax, 1
jmp 0x43005c
mov eax, 0
test eax, eax
je 0x431436
lea eax, [ebp - 0xc]
push eax
call fcn.0040ebb0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
push 1
push dword [ebp - 0x50]
push 0xa
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp + 8], 0
je 0x43011a
push 0x80000301
push 0
push 0x200
push 0x80000301
push 0
push dword [ebp - 0xc]
push 2
mov ebx, 0x440120
call fcn.0043fcc2
add esp, 0x1c
mov dword [ebp - 0xc], eax
cmp dword [ebp + 0x18], 0
je 0x430154
push 0x80000301
push 0
push 0x20
push 0x80000301
push 0
push dword [ebp - 0xc]
push 2
mov ebx, 0x440120
call fcn.0043fcc2
add esp, 0x1c
mov dword [ebp - 0xc], eax
jmp 0x43017f
push 0x80000301
push 0
push 0x40
push 0x80000301
push 0
push dword [ebp - 0xc]
push 2
mov ebx, 0x440120
call fcn.0043fcc2
add esp, 0x1c
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp - 0xc]
push 9
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp + 0x18], 0
jne 0x4305e1
mov eax, 0x4e1fa7
xor ecx, ecx
test eax, eax
je 0x43020c
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0x20]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x43021f
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x430236
dec eax
test ecx, ecx
je 0x430236
call fcn.0040aef1
add esp, 0xc
test eax, eax
jne 0x4302f9
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov eax, 0x4e8479
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x54]
push eax
call fcn.0040e54b
mov dword [ebp - 0x58], eax
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x430271
push ebx
call fcn.0043fcbc
add esp, 4
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov eax, 0x4e8482
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x60]
push eax
call fcn.0040e54b
mov dword [ebp - 0x64], eax
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x4302a1
push ebx
call fcn.0043fcbc
add esp, 4
push 0x4e63e9
push dword [ebp - 0x64]
push dword [ebp - 0x58]
mov ecx, 3
call fcn.00403c69
add esp, 0xc
mov dword [ebp - 0x68], eax
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x4302cc
push ebx
call fcn.0043fcbc
add esp, 4
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x4302dc
push ebx
call fcn.0043fcbc
add esp, 4
mov eax, dword [ebp - 0x68]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4302f0
push ebx
call fcn.0043fcbc
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
jmp 0x43032b
push 0x4e63e9
mov ebx, dword [ebp + 0x20]
push dword [ebx]
mov ecx, 2
call fcn.00403c69
add esp, 8
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x430327
push ebx
call fcn.0043fcbc
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
call fcn.00403b4e
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x50], esp
push dword [ebp - 0x14]
mov eax, 9
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x430363
push 0x508
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jg 0x430375
jmp 0x43041f
lea eax, [ebp - 0x1c]
push eax
push 4
mov eax, 2
call fcn.0043fcb0
add esp, 8
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x54], ebx
call fcn.004010cb
mov dword [ebp - 0x58], ecx
mov edi, dword [ebp - 0x54]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4303b8
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x58]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x54]
call fcn.0043fcd4
add esp, 8
mov dword [ebp - 0x1c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x58]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x50]
mov dword [edi], eax
fild dword [ebp - 0x18]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fmul qword [0x4e63e1]
fstp qword [ebp - 0x5c]
fild dword [ebp - 0x14]
fstp qword [ebp - 0x64]
fld qword [ebp - 0x64]
fadd qword [ebp - 0x5c]
fadd qword [0x4e63e1]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
call fcn.004010eb
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x18], 0
jg 0x430337
mov ebx, dword [ebp - 0x1c]
call fcn.00402709
mov dword [ebp - 0x20], eax
push 0x80000601
push 0x40000000
push 0
fild dword [ebp - 0x20]
fstp qword [ebp - 0x54]
push 0x80000601
push dword [ebp - 0x50]
push dword [ebp - 0x54]
push 2
mov ebx, 0x43ffe0
call fcn.0043fcc2
add esp, 0x1c
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
fld qword [ebp - 0x64]
ftst
fnstsw ax
test ah, 1
je 0x430470
fchs
fcomp qword [0x4e6e65]
fnstsw ax
test ah, 0x41
jne 0x4304bd
lea eax, [ebp - 8]
push eax
call fcn.0040edc4
mov dword [ebp - 0x50], esp
mov eax, 0x25
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x4304b3
push 0x6e8
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
mov eax, 0
jmp 0x43146e
fild dword [ebp - 0x20]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fdiv qword [0x4e63e1]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x5c]
call fcn.004010eb
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004314e7
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp - 0x50]
push 1
push dword [ebp - 0x20]
push 4
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
fild dword [ebp + 0x28]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fadd qword [0x4e1eb2]
fstp qword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
mov dword [ebp - 0x74], 0
push 0
push dword [ebp - 0x74]
mov dword [ebp - 0x78], 0
push 0
push dword [ebp - 0x78]
mov dword [ebp - 0x7c], 0
push 0
push dword [ebp - 0x7c]
push 1
fld qword [ebp - 0x5c]
call fcn.004010eb
push eax
push 5
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
mov eax, 0x4e1fa7
xor ecx, ecx
test eax, eax
je 0x4305ef
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0x30]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x430602
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x430619
dec eax
test ecx, ecx
je 0x430619
call fcn.0040aef1
add esp, 0xc
test eax, eax
je 0x4306a4
push dword [ebp + 0x30]
call fcn.00403b4e
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
push 1
push dword [ebp - 0x50]
push 0x11
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
mov eax, 0x4e1fa7
xor ecx, ecx
test eax, eax
je 0x4306b2
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0x44]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x4306c5
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x4306dc
dec eax
test ecx, ecx
je 0x4306dc
call fcn.0040aef1
add esp, 0xc
test eax, eax
je 0x430830
mov dword [ebp - 0x50], esp
mov ebx, dword [ebp + 0x44]
mov eax, dword [ebx]
test eax, eax
je 0x4306f6
add eax, 8
push eax
mov eax, 0x3d
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x43071d
push 0x8f1
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x50], esp
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x24]
push 0
push 0
mov eax, 0x3e
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x43075a
push 0x925
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x430778
cmp dword [ebp - 0x28], 0
je 0x430778
mov eax, 1
jmp 0x43077d
mov eax, 0
test eax, eax
je 0x4307fa
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp - 0x28]
push 0xc
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp - 0x24], 0
je 0x430830
mov dword [ebp - 0x50], esp
push dword [ebp - 0x24]
mov eax, 0x3f
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x430830
push 0xa31
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
push dword [ebp + 0x4c]
call fcn.00431511
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 1
jne 0x430d1c
mov eax, 0x4e8486
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
call fcn.00403b4e
mov dword [ebp - 0x54], eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x430869
push ebx
call fcn.0043fcbc
add esp, 4
lea eax, [ebp - 0x2c]
push eax
call fcn.0040ebb0
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
mov dword [ebp - 0x74], 0
push 0
push dword [ebp - 0x74]
push 1
push dword [ebp - 0x58]
push 1
push dword [ebp - 0x54]
push 0
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x4308fe
cmp dword [ebp - 0x2c], 0
je 0x4308fe
mov eax, 1
jmp 0x430903
mov eax, 0
test eax, eax
je 0x430d1c
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov eax, 0x4e849e
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x54]
push eax
call fcn.0040e54b
mov dword [ebp - 0x58], eax
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x43093b
push ebx
call fcn.0043fcbc
add esp, 4
mov eax, dword [ebp - 0x58]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x43094f
push ebx
call fcn.0043fcbc
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
call fcn.00403f12
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp - 0x50]
push 1
push 2
push 0x1a
push dword [ebp - 0x2c]
call fcn.0040ebca
mov dword [ebp - 4], eax
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push 1
push 6
push dword [ebp - 0x2c]
call fcn.0040ebca
mov dword [ebp - 4], eax
mov eax, 0x4e84e2
push eax
mov ebx, eax
call fcn.004010cb
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0043fcb6
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x430aa3
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
test eax, eax
je 0x430a97
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0043fcb6
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x430a7a
pop eax
push eax
mov ebx, dword [ebp - 0x34]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x430ac2
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x430abe
imul eax, dword [ebx]
jmp 0x430ab3
mov ecx, eax
test ecx, ecx
je 0x430ae1
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x430ada
push ebx
push eax
call fcn.0043fcbc
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x430ac8
call fcn.0043fcbc
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x34]
call fcn.00402709
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
xor ecx, ecx
push eax
lea eax, [ebp - 0x3c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x430c22
mov ebx, dword [ebp - 0x34]
call fcn.004010cb
push ebx
push ecx
mov eax, dword [ebp - 0x3c]
dec eax
jns 0x430b39
push 0xd52
push 0x401ac3f
push 4
call fcn.0043fcc8
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x430b56
push 0xd52
push 0x401ac3f
push 1
call fcn.0043fcc8
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
push dword [ebp - 0x50]
call fcn.0040e54b
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x430b89
push ebx
call fcn.0043fcbc
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
fild dword [ebp - 0x3c]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fsub qword [0x4e1eb2]
fstp qword [ebp - 0x5c]
lea eax, [ebp - 0x30]
push eax
call fcn.00403f12
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
mov dword [ebp - 0x74], 0
push 0
push dword [ebp - 0x74]
mov dword [ebp - 0x78], 0
push 0
push dword [ebp - 0x78]
push 1
push dword [ebp - 0x60]
push 1
fld qword [ebp - 0x5c]
call fcn.004010eb
push eax
push 1
push 1
push 0x13
push dword [ebp - 0x2c]
call fcn.0040ebca
mov dword [ebp - 4], eax
pop eax
pop ebx
pop ecx
jmp 0x430b04
add esp, 0xc
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
push 0x1b
push dword [ebp - 0x2c]
call fcn.0040ebca
mov dword [ebp - 4], eax
push dword [ebp + 0x4c]
call fcn.0043152e
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp - 0x50]
push 1
push 1
push 0x19
push dword [ebp - 0x2c]
call fcn.0040ebca
mov dword [ebp - 4], eax
mov dword [ebp - 0x50], 0
push 0
push dword [ebp - 0x50]
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp + 0x38]
push 3
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp - 0x28], 0
je 0x430da4
lea eax, [ebp - 0x28]
push eax
call fcn.0040edc4
cmp dword [ebp + 8], 0
je 0x430dbf
cmp dword [ebp + 0x10], 0
jne 0x430dbf
mov eax, 1
jmp 0x430dc4
mov eax, 0
test eax, eax
je 0x43114f
lea eax, [ebp - 0x40]
push eax
call fcn.0040ebb0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
push 1
push dword [ebp - 0x50]
push 0x1b
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x430e68
cmp dword [ebp - 0x40], 0
je 0x430e68
mov eax, 1
jmp 0x430e6d
mov eax, 0
test eax, eax
je 0x43114a
lea eax, [ebp - 0x44]
push eax
call fcn.0040ebb0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
push 1
push dword [ebp - 0x50]
push 7
push dword [ebp - 0x40]
call fcn.0040ebca
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x44]
xor ecx, ecx
push eax
lea eax, [ebp - 0x3c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x43113e
fild dword [ebp - 0x3c]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fsub qword [0x4e1eb2]
fstp qword [ebp - 0x5c]
lea eax, [ebp - 0x48]
push eax
call fcn.0040ebb0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
mov dword [ebp - 0x74], 0
push 0
push dword [ebp - 0x74]
mov dword [ebp - 0x78], 0
push 0
push dword [ebp - 0x78]
mov dword [ebp - 0x7c], 0
push 0
push dword [ebp - 0x7c]
push 1
push dword [ebp - 0x60]
push 1
fld qword [ebp - 0x5c]
call fcn.004010eb
push eax
push 8
push dword [ebp - 0x40]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp - 0x48], 0
jne 0x430fb1
jmp 0x431136
lea eax, [ebp - 0x4c]
push eax
call fcn.0040ebb0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp - 0x50]
push 1
push 0x80058000
push 5
push dword [ebp - 0x48]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x431048
cmp dword [ebp - 0x4c], 0
je 0x431048
mov eax, 1
jmp 0x43104d
mov eax, 0
test eax, eax
je 0x431126
push dword [ebp - 0x4c]
call fcn.0040ee75
mov dword [ebp - 0x50], eax
push dword [ebp + 0x40]
push 4
mov eax, 2
call fcn.0043fcb0
add esp, 8
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x54], eax
mov ebx, dword [ebp + 0x40]
mov ebx, dword [ebx]
mov dword [ebp - 0x58], ebx
call fcn.004010cb
mov dword [ebp - 0x5c], ecx
mov edi, dword [ebp - 0x58]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4310a4
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x5c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x58]
call fcn.0043fcd4
add esp, 8
mov ebx, dword [ebp + 0x40]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x5c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x54]
push edi
test eax, eax
je 0x4310e7
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0043fcb6
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x4310fa
push ebx
call fcn.0043fcbc
add esp, 4
mov dword [ebp - 0x50], esp
push dword [ebp - 0x4c]
mov eax, 0x40
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x431126
push 0x12a0
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
lea eax, [ebp - 0x48]
push eax
call fcn.0040edc4
mov dword [ebp - 0x48], 0
pop eax
pop ebx
pop ecx
jmp 0x430f02
add esp, 0xc
lea eax, [ebp - 0x40]
push eax
call fcn.0040edc4
jmp 0x431376
lea eax, [ebp - 0x40]
push eax
call fcn.0040ebb0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
mov dword [ebp - 0x70], 0
push 0
push dword [ebp - 0x70]
push 1
push dword [ebp - 0x50]
push 0x14
push dword [ebp - 8]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x4311eb
cmp dword [ebp - 0x40], 0
je 0x4311eb
mov eax, 1
jmp 0x4311f0
mov eax, 0
test eax, eax
je 0x431376
lea eax, [ebp - 0x4c]
push eax
call fcn.0040ebb0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp - 0x50]
push 1
push 0x80058000
push 5
push dword [ebp - 0x40]
call fcn.0040ebca
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x43128f
cmp dword [ebp - 0x4c], 0
je 0x43128f
mov eax, 1
jmp 0x431294
mov eax, 0
test eax, eax
je 0x43136d
push dword [ebp - 0x4c]
call fcn.0040ee75
mov dword [ebp - 0x50], eax
push dword [ebp + 0x40]
push 4
mov eax, 2
call fcn.0043fcb0
add esp, 8
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x54], eax
mov ebx, dword [ebp + 0x40]
mov ebx, dword [ebx]
mov dword [ebp - 0x58], ebx
call fcn.004010cb
mov dword [ebp - 0x5c], ecx
mov edi, dword [ebp - 0x58]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4312eb
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x5c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x58]
call fcn.0043fcd4
add esp, 8
mov ebx, dword [ebp + 0x40]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x5c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x54]
push edi
test eax, eax
je 0x43132e
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0043fcb6
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x431341
push ebx
call fcn.0043fcbc
add esp, 4
mov dword [ebp - 0x50], esp
push dword [ebp - 0x4c]
mov eax, 0x40
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x43136d
push 0x14ef
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
lea eax, [ebp - 0x40]
push eax
call fcn.0040edc4
push dword [ebp + 0x4c]
call fcn.00431511
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 1
jne 0x43139c
cmp dword [ebp - 0x2c], 0
je 0x43139c
mov eax, 1
jmp 0x4313a1
mov eax, 0
test eax, eax
je 0x43142d
push dword [ebp + 0x54]
call fcn.0040ebb0
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
push dword [ebp - 0x50]
push 1
push 1
push 0x18
push dword [ebp - 0x2c]
call fcn.0040ebca
mov dword [ebp - 4], eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0040edc4
lea eax, [ebp - 8]
push eax
call fcn.0040edc4
mov dword [ebp - 0x50], esp
mov eax, 0x25
call fcn.0043fcce
cmp dword [ebp - 0x50], esp
je 0x43145f
push 0x1657
push 0x401ac3f
push 6
call fcn.0043fcc8
add esp, 0xc
mov ebx, dword [ebp + 0x40]
mov ebx, dword [ebx]
call fcn.00402709
jmp 0x43146e
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x43147f
push ebx
call fcn.0043fcbc
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
call fcn.0043fcbc
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x43149b
push ebx
call fcn.0043fcbc
add esp, 4
mov ebx, dword [ebp - 0x34]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4314b9
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4314b5
imul eax, dword [ebx]
jmp 0x4314aa
mov ecx, eax
test ecx, ecx
je 0x4314d8
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x4314d1
push ebx
push eax
call fcn.0043fcbc
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4314bf
call fcn.0043fcbc
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x54