Function at 0x51a2f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x5dc86e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x344
push ebx
push ebp
push esi
push edi
xor esi, esi
lea ecx, [esp + 0x10]
mov dword [esp + 0x35c], esi
call fcn.00558060
mov al, byte [0x626b18]
mov ebx, 1
test bl, al
mov byte [esp + 0x35c], bl
jne 0x51a368
mov dl, al
mov al, byte [esp + 0x23]
or dl, bl
push 0x51cc30
mov byte [0x626b18], dl
mov byte [0x626b20], al
mov dword [0x626b24], esi
mov dword [0x626b28], esi
mov dword [0x626b2c], esi
call fcn.005bca9b
add esp, 4
cmp byte [0x619c14], bl
jne 0x51a3d0
lea ecx, [esp + 0x14]
call fcn.00558060
mov byte [esp + 0x35c], 2
mov esi, 0x64
mov al, byte [0x626b30]
mov cl, al
inc al
push ecx
lea ecx, [esp + 0x18]
mov byte [0x626b30], al
call fcn.00558500
dec esi
jne 0x51a386
push ecx
lea edx, [esp + 0x18]
mov ecx, esp
mov dword [esp + 0x1c], esp
push edx
call fcn.00558070
lea ecx, [esp + 0x14]
call fcn.00558390
lea ecx, [esp + 0x14]
mov byte [esp + 0x35c], bl
call fcn.005581a0
jmp 0x51a4a2
push 5
lea ecx, [esp + 0x368]
call fcn.00558380
movzx ax, al
cmp word [esp + 0x384], ax
jne 0x51a481
push 0x626b20
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 2
push 0x60eb44
call fcn.00558100
mov ecx, 0x626b00
call fcn.00517240
cmp ax, bx
jge 0x51a481
lea ecx, [esp + 0x10]
mov byte [esp + 0x35c], 0
call fcn.005581a0
mov ecx, dword [esp + 0x378]
mov edx, dword [esp + 0x374]
push ecx
push edx
lea ecx, [esp + 0x378]
mov dword [esp + 0x364], 4
call fcn.00402cf0
mov eax, dword [esp + 0x374]
push eax
call fcn.005bc500
add esp, 4
mov dword [esp + 0x374], esi
mov dword [esp + 0x378], esi
mov dword [esp + 0x37c], esi
mov byte [esp + 0x35c], 3
jmp 0x51cb71
push esi
mov ecx, 0x626b20
call fcn.00402a80
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push eax
call fcn.00558070
lea ecx, [esp + 0x14]
call fcn.00558390
movsx eax, word [esp + 0x388]
cmp eax, 6
je 0x51c5f0
cmp eax, 0x701
jne case.default.0x51c60c
push 5
lea ecx, [esp + 0x368]
call fcn.00558380
and eax, 0xff
cmp eax, 8
ja case.default.0x51c60c
mov ebp, dword [esp + 0x380]
jmp dword [eax*4 + 0x51cbb0]
push 0x12
lea ecx, [esp + 0x14]
call fcn.00558380
test bl, al
je 0x51a55c
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eb3c
call fcn.00558100
lea ecx, [esp + 0x288]
push ecx
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a526
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x288]
call fcn.00401850
jmp case.default.0x51c60c
push 0x12
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 2
je 0x51a5d0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eb34
call fcn.00558100
lea eax, [esp + 0x2f8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a59a
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x2f8]
call fcn.00401850
jmp case.default.0x51c60c
push 0x12
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 4
je 0x51a644
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eb2c
call fcn.00558100
lea eax, [esp + 0x2b8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a60e
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x2b8]
call fcn.00401850
jmp case.default.0x51c60c
push 0x12
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x10
je 0x51a6b8
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eb24
call fcn.00558100
lea eax, [esp + 0x338]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a682
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x338]
call fcn.00401850
jmp case.default.0x51c60c
push 0x12
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x20
je 0x51a72c
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eb1c
call fcn.00558100
lea eax, [esp + 0x2d8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a6f6
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x2d8]
call fcn.00401850
jmp case.default.0x51c60c
push 0x12
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x40
je 0x51a7a0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eb14
call fcn.00558100
lea eax, [esp + 0x318]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a76a
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x318]
call fcn.00401850
jmp case.default.0x51c60c
push 0x12
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test al, 0x80
mov ecx, esp
je 0x51a814
mov dword [esp + 0x1c], esp
push 6
push 0x60eb0c
call fcn.00558100
lea eax, [esp + 0x298]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a7de
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x298]
call fcn.00401850
jmp case.default.0x51c60c
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0x2a8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a840
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x2a8]
call fcn.00401850
jmp case.default.0x51c60c
push 0x13
lea ecx, [esp + 0x14]
call fcn.00558380
test bl, al
je 0x51a8ea
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eafc
call fcn.00558100
lea eax, [esp + 0x2c8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a8b4
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x2c8]
call fcn.00401850
jmp case.default.0x51c60c
push 0x13
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 2
je 0x51a95e
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eaf4
call fcn.00558100
lea eax, [esp + 0x2e8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a928
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x2e8]
call fcn.00401850
jmp case.default.0x51c60c
push 0x13
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 4
je 0x51a9d2
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eaec
call fcn.00558100
lea eax, [esp + 0x308]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51a99c
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x308]
call fcn.00401850
jmp case.default.0x51c60c
push 0x13
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 8
je 0x51aa46
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eae4
call fcn.00558100
lea eax, [esp + 0x328]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51aa10
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x328]
call fcn.00401850
jmp case.default.0x51c60c
push 0x13
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test al, 0x10
mov ecx, esp
je 0x51aaba
mov dword [esp + 0x1c], esp
push 6
push 0x60eadc
call fcn.00558100
lea eax, [esp + 0x348]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51aa84
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x384]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x348]
call fcn.00401850
jmp case.default.0x51c60c
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0x258]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51aae6
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x258]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51ab4c
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51ab43
cmp al, 0xff
je 0x51ab43
dec al
mov byte [ecx], al
mov dword [esp + 0x258], esi
mov dword [esp + 0x25c], esi
mov dword [esp + 0x260], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x258], esi
mov dword [esp + 0x25c], esi
mov dword [esp + 0x260], esi
jmp case.default.0x51c60c
push 0x15
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test bl, al
mov ecx, esp
je 0x51ac20
mov dword [esp + 0x1c], esp
push 6
push 0x60ead4
call fcn.00558100
lea eax, [esp + 0x278]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
add esp, 8
test edi, edi
jne 0x51aba8
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x278]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
xor edx, edx
and ecx, 3
cmp eax, edx
rep movsb byte es:[edi], byte [esi]
je 0x51ac09
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51abfe
cmp al, 0xff
je 0x51abfe
dec al
mov byte [ecx], al
mov dword [esp + 0x278], edx
mov dword [esp + 0x27c], edx
mov dword [esp + 0x280], edx
jmp case.0x51a4e1.3
push ecx
call fcn.005bc500
add esp, 4
xor edx, edx
mov dword [esp + 0x278], edx
mov dword [esp + 0x27c], edx
mov dword [esp + 0x280], edx
jmp case.0x51a4e1.3
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0x58]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51ac49
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x58]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
xor edx, edx
and ecx, 3
cmp eax, edx
rep movsb byte es:[edi], byte [esi]
je 0x51ac91
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51ac86
cmp al, 0xff
je 0x51ac86
dec al
mov byte [ecx], al
jmp 0x51ac91
push ecx
call fcn.005bc500
add esp, 4
xor edx, edx
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], edx
push 0x16
lea ecx, [esp + 0x14]
call fcn.00558380
test bl, al
je 0x51ad58
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eacc
call fcn.00558100
lea eax, [esp + 0x228]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
xor ebx, ebx
add esp, 8
cmp edi, ebx
jne 0x51ace1
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x228]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x51ad3e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51ad35
cmp al, 0xff
je 0x51ad35
dec al
mov byte [ecx], al
mov dword [esp + 0x228], ebx
mov dword [esp + 0x22c], ebx
mov dword [esp + 0x230], ebx
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x228], ebx
mov dword [esp + 0x22c], ebx
mov dword [esp + 0x230], ebx
jmp case.default.0x51c60c
push 0x16
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 2
je 0x51ae01
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eac4
call fcn.00558100
lea eax, [esp + 0x78]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
xor ebx, ebx
add esp, 8
cmp edi, ebx
jne 0x51ad99
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x78]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x51aded
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51ade4
cmp al, 0xff
je 0x51ade4
dec al
mov byte [ecx], al
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
jmp case.default.0x51c60c
push 0x16
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 4
je 0x51aebc
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eabc
call fcn.00558100
lea eax, [esp + 0x1e8]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
xor ebx, ebx
add esp, 8
cmp edi, ebx
jne 0x51ae45
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x1e8]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x51aea2
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51ae99
cmp al, 0xff
je 0x51ae99
dec al
mov byte [ecx], al
mov dword [esp + 0x1e8], ebx
mov dword [esp + 0x1ec], ebx
mov dword [esp + 0x1f0], ebx
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x1e8], ebx
mov dword [esp + 0x1ec], ebx
mov dword [esp + 0x1f0], ebx
jmp case.default.0x51c60c
push 0x16
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 8
je 0x51af77
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eab4
call fcn.00558100
lea eax, [esp + 0x98]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
xor ebx, ebx
add esp, 8
cmp edi, ebx
jne 0x51af00
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x98]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x51af5d
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51af54
cmp al, 0xff
je 0x51af54
dec al
mov byte [ecx], al
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], ebx
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], ebx
jmp case.default.0x51c60c
push 0x16
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x10
je 0x51b032
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eaac
call fcn.00558100
lea eax, [esp + 0x268]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
xor ebx, ebx
add esp, 8
cmp edi, ebx
jne 0x51afbb
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x268]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x51b018
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b00f
cmp al, 0xff
je 0x51b00f
dec al
mov byte [ecx], al
mov dword [esp + 0x268], ebx
mov dword [esp + 0x26c], ebx
mov dword [esp + 0x270], ebx
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x268], ebx
mov dword [esp + 0x26c], ebx
mov dword [esp + 0x270], ebx
jmp case.default.0x51c60c
push 0x16
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x20
je 0x51b0ed
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60eaa4
call fcn.00558100
lea eax, [esp + 0xb8]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
xor ebx, ebx
add esp, 8
cmp edi, ebx
jne 0x51b076
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0xb8]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x51b0d3
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b0ca
cmp al, 0xff
je 0x51b0ca
dec al
mov byte [ecx], al
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], ebx
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], ebx
jmp case.default.0x51c60c
push 0x16
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x40
je 0x51b1a8
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea9c
call fcn.00558100
lea eax, [esp + 0x208]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
xor ebx, ebx
add esp, 8
cmp edi, ebx
jne 0x51b131
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x208]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x51b18e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b185
cmp al, 0xff
je 0x51b185
dec al
mov byte [ecx], al
mov dword [esp + 0x208], ebx
mov dword [esp + 0x20c], ebx
mov dword [esp + 0x210], ebx
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x208], ebx
mov dword [esp + 0x20c], ebx
mov dword [esp + 0x210], ebx
jmp case.default.0x51c60c
push 0x16
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test al, 0x80
mov ecx, esp
je 0x51b263
mov dword [esp + 0x1c], esp
push 6
push 0x60ea94
call fcn.00558100
lea eax, [esp + 0xd8]
push eax
call fcn.00560f40
mov edi, dword [eax + 4]
xor ebx, ebx
add esp, 8
cmp edi, ebx
jne 0x51b1ec
mov edi, 0x5e514c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0xd8]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x51b249
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b240
cmp al, 0xff
je 0x51b240
dec al
mov byte [ecx], al
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], ebx
mov dword [esp + 0xe0], ebx
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], ebx
mov dword [esp + 0xe0], ebx
jmp case.default.0x51c60c
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0x248]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b28f
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x248]
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b2f0
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b2e7
cmp al, 0xff
je 0x51b2e7
dec al
mov byte [ecx], al
mov dword [esp + 0x248], esi
mov dword [esp + 0x24c], esi
mov dword [esp + 0x250], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x248], esi
mov dword [esp + 0x24c], esi
mov dword [esp + 0x250], esi
jmp case.default.0x51c60c
push 0x17
lea ecx, [esp + 0x14]
call fcn.00558380
test bl, al
je 0x51b3cc
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea8c
call fcn.00558100
lea eax, [esp + 0xf8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b34c
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0xf8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b3b2
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b3a9
cmp al, 0xff
je 0x51b3a9
dec al
mov byte [ecx], al
mov dword [esp + 0xf8], esi
mov dword [esp + 0xfc], esi
mov dword [esp + 0x100], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0xf8], esi
mov dword [esp + 0xfc], esi
mov dword [esp + 0x100], esi
jmp case.default.0x51c60c
push 0x17
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 2
je 0x51b48e
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea84
call fcn.00558100
lea eax, [esp + 0x1c8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b40e
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x1c8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b474
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b46b
cmp al, 0xff
je 0x51b46b
dec al
mov byte [ecx], al
mov dword [esp + 0x1c8], esi
mov dword [esp + 0x1cc], esi
mov dword [esp + 0x1d0], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x1c8], esi
mov dword [esp + 0x1cc], esi
mov dword [esp + 0x1d0], esi
jmp case.default.0x51c60c
push 0x17
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 8
je 0x51b550
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea7c
call fcn.00558100
lea eax, [esp + 0x118]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b4d0
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x118]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b536
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b52d
cmp al, 0xff
je 0x51b52d
dec al
mov byte [ecx], al
mov dword [esp + 0x118], esi
mov dword [esp + 0x11c], esi
mov dword [esp + 0x120], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x118], esi
mov dword [esp + 0x11c], esi
mov dword [esp + 0x120], esi
jmp case.default.0x51c60c
push 0x17
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test al, 0x10
mov ecx, esp
je 0x51b612
mov dword [esp + 0x1c], esp
push 6
push 0x60ea74
call fcn.00558100
lea eax, [esp + 0x1d8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b592
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x1d8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b5f8
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b5ef
cmp al, 0xff
je 0x51b5ef
dec al
mov byte [ecx], al
mov dword [esp + 0x1d8], esi
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x1e0], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x1d8], esi
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x1e0], esi
jmp case.default.0x51c60c
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0x138]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b63e
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x138]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b6a4
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b69b
cmp al, 0xff
je 0x51b69b
dec al
mov byte [ecx], al
mov dword [esp + 0x138], esi
mov dword [esp + 0x13c], esi
mov dword [esp + 0x140], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x138], esi
mov dword [esp + 0x13c], esi
mov dword [esp + 0x140], esi
jmp case.default.0x51c60c
push 0x18
lea ecx, [esp + 0x14]
call fcn.00558380
test bl, al
je 0x51b780
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea6c
call fcn.00558100
lea eax, [esp + 0x1f8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b700
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x1f8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b766
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b75d
cmp al, 0xff
je 0x51b75d
dec al
mov byte [ecx], al
mov dword [esp + 0x1f8], esi
mov dword [esp + 0x1fc], esi
mov dword [esp + 0x200], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x1f8], esi
mov dword [esp + 0x1fc], esi
mov dword [esp + 0x200], esi
jmp case.default.0x51c60c
push 0x18
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 4
je 0x51b842
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea64
call fcn.00558100
lea eax, [esp + 0x158]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b7c2
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x158]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b828
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b81f
cmp al, 0xff
je 0x51b81f
dec al
mov byte [ecx], al
mov dword [esp + 0x158], esi
mov dword [esp + 0x15c], esi
mov dword [esp + 0x160], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x158], esi
mov dword [esp + 0x15c], esi
mov dword [esp + 0x160], esi
jmp case.default.0x51c60c
push 0x18
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 8
je 0x51b904
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea5c
call fcn.00558100
lea eax, [esp + 0x218]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b884
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x218]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b8ea
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b8e1
cmp al, 0xff
je 0x51b8e1
dec al
mov byte [ecx], al
mov dword [esp + 0x218], esi
mov dword [esp + 0x21c], esi
mov dword [esp + 0x220], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x218], esi
mov dword [esp + 0x21c], esi
mov dword [esp + 0x220], esi
jmp case.default.0x51c60c
push 0x18
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x10
je 0x51b9c6
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea54
call fcn.00558100
lea eax, [esp + 0x178]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51b946
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x178]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51b9ac
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51b9a3
cmp al, 0xff
je 0x51b9a3
dec al
mov byte [ecx], al
mov dword [esp + 0x178], esi
mov dword [esp + 0x17c], esi
mov dword [esp + 0x180], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x178], esi
mov dword [esp + 0x17c], esi
mov dword [esp + 0x180], esi
jmp case.default.0x51c60c
push 0x18
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test al, 0x20
mov ecx, esp
je 0x51ba88
mov dword [esp + 0x1c], esp
push 6
push 0x60ea4c
call fcn.00558100
lea eax, [esp + 0x238]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51ba08
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x238]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51ba6e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51ba65
cmp al, 0xff
je 0x51ba65
dec al
mov byte [ecx], al
mov dword [esp + 0x238], esi
mov dword [esp + 0x23c], esi
mov dword [esp + 0x240], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x238], esi
mov dword [esp + 0x23c], esi
mov dword [esp + 0x240], esi
jmp case.default.0x51c60c
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0x198]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51bab4
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x198]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51bb1a
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51bb11
cmp al, 0xff
je 0x51bb11
dec al
mov byte [ecx], al
mov dword [esp + 0x198], esi
mov dword [esp + 0x19c], esi
mov dword [esp + 0x1a0], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x198], esi
mov dword [esp + 0x19c], esi
mov dword [esp + 0x1a0], esi
jmp case.default.0x51c60c
push 0x19
lea ecx, [esp + 0x14]
call fcn.00558380
test bl, al
je 0x51bbde
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea44
call fcn.00558100
lea eax, [esp + 0x28]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51bb73
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x28]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51bbcd
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51bbc4
cmp al, 0xff
je 0x51bbc4
dec al
mov byte [ecx], al
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
jmp case.default.0x51c60c
push 0x19
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 2
je 0x51bca0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea3c
call fcn.00558100
lea eax, [esp + 0x1b8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51bc20
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x1b8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51bc86
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51bc7d
cmp al, 0xff
je 0x51bc7d
dec al
mov byte [ecx], al
mov dword [esp + 0x1b8], esi
mov dword [esp + 0x1bc], esi
mov dword [esp + 0x1c0], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x1b8], esi
mov dword [esp + 0x1bc], esi
mov dword [esp + 0x1c0], esi
jmp case.default.0x51c60c
push 0x19
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x10
je 0x51bd4a
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea34
call fcn.00558100
lea eax, [esp + 0x38]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51bcdf
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x38]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51bd39
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51bd30
cmp al, 0xff
je 0x51bd30
dec al
mov byte [ecx], al
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], esi
jmp case.default.0x51c60c
push 0x19
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test al, 0x20
mov ecx, esp
je 0x51bdf4
mov dword [esp + 0x1c], esp
push 6
push 0x60ea2c
call fcn.00558100
lea eax, [esp + 0x48]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51bd89
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x48]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51bde3
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51bdda
cmp al, 0xff
je 0x51bdda
dec al
mov byte [ecx], al
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
jmp case.default.0x51c60c
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0x68]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51be1d
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x68]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51be77
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51be6e
cmp al, 0xff
je 0x51be6e
dec al
mov byte [ecx], al
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], esi
jmp case.default.0x51c60c
push 0x1a
lea ecx, [esp + 0x14]
call fcn.00558380
test bl, al
je 0x51bf4a
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea24
call fcn.00558100
lea eax, [esp + 0x88]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51beca
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x88]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51bf30
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51bf27
cmp al, 0xff
je 0x51bf27
dec al
mov byte [ecx], al
mov dword [esp + 0x88], esi
mov dword [esp + 0x8c], esi
mov dword [esp + 0x90], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x88], esi
mov dword [esp + 0x8c], esi
mov dword [esp + 0x90], esi
jmp case.default.0x51c60c
push 0x1a
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 2
je 0x51c00c
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea1c
call fcn.00558100
lea eax, [esp + 0xa8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51bf8c
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0xa8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51bff2
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51bfe9
cmp al, 0xff
je 0x51bfe9
dec al
mov byte [ecx], al
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], esi
mov dword [esp + 0xb0], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], esi
mov dword [esp + 0xb0], esi
jmp case.default.0x51c60c
push 0x1a
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test al, 4
mov ecx, esp
je 0x51c0ce
mov dword [esp + 0x1c], esp
push 6
push 0x60ea14
call fcn.00558100
lea eax, [esp + 0xc8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51c04e
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0xc8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51c0b4
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51c0ab
cmp al, 0xff
je 0x51c0ab
dec al
mov byte [ecx], al
mov dword [esp + 0xc8], esi
mov dword [esp + 0xcc], esi
mov dword [esp + 0xd0], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0xc8], esi
mov dword [esp + 0xcc], esi
mov dword [esp + 0xd0], esi
jmp case.default.0x51c60c
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0xe8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51c0fa
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0xe8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51c160
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51c157
cmp al, 0xff
je 0x51c157
dec al
mov byte [ecx], al
mov dword [esp + 0xe8], esi
mov dword [esp + 0xec], esi
mov dword [esp + 0xf0], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0xe8], esi
mov dword [esp + 0xec], esi
mov dword [esp + 0xf0], esi
jmp case.default.0x51c60c
push 0x1c
lea ecx, [esp + 0x14]
call fcn.00558380
test bl, al
je 0x51c23c
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea0c
call fcn.00558100
lea eax, [esp + 0x108]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51c1bc
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x108]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51c222
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51c219
cmp al, 0xff
je 0x51c219
dec al
mov byte [ecx], al
mov dword [esp + 0x108], esi
mov dword [esp + 0x10c], esi
mov dword [esp + 0x110], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x108], esi
mov dword [esp + 0x10c], esi
mov dword [esp + 0x110], esi
jmp case.default.0x51c60c
push 0x1c
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 2
je 0x51c2fe
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60ea04
call fcn.00558100
lea eax, [esp + 0x128]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51c27e
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x128]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51c2e4
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51c2db
cmp al, 0xff
je 0x51c2db
dec al
mov byte [ecx], al
mov dword [esp + 0x128], esi
mov dword [esp + 0x12c], esi
mov dword [esp + 0x130], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x128], esi
mov dword [esp + 0x12c], esi
mov dword [esp + 0x130], esi
jmp case.default.0x51c60c
push 0x1c
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 4
je 0x51c3c0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60e9fc
call fcn.00558100
lea eax, [esp + 0x148]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51c340
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x148]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51c3a6
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51c39d
cmp al, 0xff
je 0x51c39d
dec al
mov byte [ecx], al
mov dword [esp + 0x148], esi
mov dword [esp + 0x14c], esi
mov dword [esp + 0x150], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x148], esi
mov dword [esp + 0x14c], esi
mov dword [esp + 0x150], esi
jmp case.default.0x51c60c
push 0x1c
lea ecx, [esp + 0x14]
call fcn.00558380
test al, 0x20
je 0x51c482
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x60e9f4
call fcn.00558100
lea eax, [esp + 0x168]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51c402
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x168]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51c468
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51c45f
cmp al, 0xff
je 0x51c45f
dec al
mov byte [ecx], al
mov dword [esp + 0x168], esi
mov dword [esp + 0x16c], esi
mov dword [esp + 0x170], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x168], esi
mov dword [esp + 0x16c], esi
mov dword [esp + 0x170], esi
jmp case.default.0x51c60c
push 0x1c
lea ecx, [esp + 0x14]
call fcn.00558380
push ecx
test al, 0x40
mov ecx, esp
je 0x51c544
mov dword [esp + 0x1c], esp
push 6
push 0x60e9ec
call fcn.00558100
lea eax, [esp + 0x188]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51c4c4
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x188]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51c52a
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51c521
cmp al, 0xff
je 0x51c521
dec al
mov byte [ecx], al
mov dword [esp + 0x188], esi
mov dword [esp + 0x18c], esi
mov dword [esp + 0x190], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x188], esi
mov dword [esp + 0x18c], esi
mov dword [esp + 0x190], esi
jmp case.default.0x51c60c
mov dword [esp + 0x1c], esp
push 6
push 0x60eb04
call fcn.00558100
lea eax, [esp + 0x1a8]
push eax
call fcn.00560f40
mov eax, dword [eax + 4]
add esp, 8
test eax, eax
jne 0x51c570
mov eax, 0x5e514c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x1a8]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x380]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
cmp eax, esi
je 0x51c5d6
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x51c5cd
cmp al, 0xff
je 0x51c5cd
dec al
mov byte [ecx], al
mov dword [esp + 0x1a8], esi
mov dword [esp + 0x1ac], esi
mov dword [esp + 0x1b0], esi
jmp case.default.0x51c60c
push ecx
call fcn.005bc500
add esp, 4
mov dword [esp + 0x1a8], esi
mov dword [esp + 0x1ac], esi
mov dword [esp + 0x1b0], esi
jmp case.default.0x51c60c
push 5
lea ecx, [esp + 0x368]
call fcn.00558380
and eax, 0xff
cmp eax, 0x16
ja case.default.0x51c60c
jmp dword [eax*4 + 0x51cbd4]
push 2
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
push eax
jmp 0x51caef
push 0x21
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e7a50]
mov ecx, dword [esp + 0x380]
sub esp, 8
fstp qword [esp]
push str._.2f
push ecx
call fcn.005bcf3d
add esp, 0x10
jmp case.default.0x51c60c
push 0x22
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
push 0x23
shl eax, 6
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x14]
fild dword [esp + 0x18]
fstp qword [esp + 0x1c]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e62c8]
fadd qword [esp + 0x18]
jmp 0x51c903
push 0x24
lea ecx, [esp + 0x14]
call fcn.00558380
mov ecx, dword [esp + 0x380]
and eax, 0xff
lea eax, [eax + eax*4]
shl eax, 1
push eax
push 0x609488
push ecx
jmp 0x51cafc
push 0x25
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
lea edx, [eax + eax*4]
shl edx, 1
jmp 0x51caee
push 0x26
lea ecx, [esp + 0x14]
call fcn.00558380
mov ecx, dword [esp + 0x380]
and eax, 0xff
push eax
push 0x609488
push ecx
jmp 0x51cafc
push 0x28
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e6cc8]
jmp 0x51c903
push 0x29
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
sub eax, 0x28
push eax
jmp 0x51caef
push 0x2a
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e6cc8]
jmp 0x51c647
push 0x2b
lea ecx, [esp + 0x14]
call fcn.00558380
mov edx, dword [esp + 0x380]
and eax, 0xff
sub eax, 0x28
push eax
push 0x609488
push edx
jmp 0x51cafc
push 0x33
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
push 0x32
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x14]
fild dword [esp + 0x18]
fmul qword [0x5e5198]
fstp qword [esp + 0x1c]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e5760]
fadd qword [esp + 0x18]
mov eax, dword [esp + 0x380]
sub esp, 8
fstp qword [esp]
push str._.2f
push eax
call fcn.005bcf3d
add esp, 0x10
jmp case.default.0x51c60c
push 0x35
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
push 0x36
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x14]
fild dword [esp + 0x18]
fmul qword [0x5e6cc8]
fstp qword [esp + 0x1c]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e6248]
fadd qword [esp + 0x18]
jmp 0x51c647
push 0x37
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
push 0x38
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x14]
fild dword [esp + 0x18]
fmul qword [0x5e7a48]
fstp qword [esp + 0x1c]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e7a40]
fadd qword [esp + 0x18]
jmp 0x51c903
push 0x42
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e5198]
jmp 0x51c7db
push 0x42
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e5198]
jmp 0x51c647
push 0x44
lea ecx, [esp + 0x14]
call fcn.00558380
cmp al, 0x80
push 0x44
lea ecx, [esp + 0x14]
jae 0x51c923
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e53c0]
fsub qword [0x5e62b8]
mov edx, dword [esp + 0x380]
sub esp, 8
fstp qword [esp]
push str._.2f
push edx
call fcn.005bcf3d
add esp, 0x10
jmp case.default.0x51c60c
call fcn.00558380
and eax, 0xff
sub eax, 0x80
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e53c0]
jmp 0x51c7db
push 0x4b
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
push 0x4a
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x14]
fild dword [esp + 0x18]
fmul qword [0x5e6cc8]
fstp qword [esp + 0x1c]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e7a38]
fadd qword [esp + 0x18]
jmp 0x51c647
push 0x54
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e78d0]
jmp 0x51c903
push 0x56
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e6cc8]
jmp 0x51c7db
push 0x39
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
push 0x62
mov ecx, eax
shl eax, 8
sub eax, ecx
lea ecx, [eax + eax*2]
mov eax, 0x80808081
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [esp + 0x14]
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
fstp qword [esp + 0x1c]
call fcn.00558380
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x5e7a30]
fadd qword [esp + 0x18]
jmp 0x51c903
push 0x6c
lea ecx, [esp + 0x14]
call fcn.00558380
mov bl, al
push 0x6d
and ebx, 0xff
lea ecx, [esp + 0x14]
shl ebx, 8
call fcn.00558380
and eax, 0xff
push 0x6e
add ebx, eax
lea ecx, [esp + 0x14]
shl ebx, 8
call fcn.00558380
and eax, 0xff
push 0x6f
add ebx, eax
lea ecx, [esp + 0x14]
shl ebx, 8
call fcn.00558380
and eax, 0xff
add ebx, eax
push ebx
jmp 0x51caef
push 0x71
lea ecx, [esp + 0x14]
call fcn.00558380
mov bl, al
push 0x72
and ebx, 0xff
lea ecx, [esp + 0x14]
shl ebx, 8
call fcn.00558380
and eax, 0xff
push 0x73
add ebx, eax
lea ecx, [esp + 0x14]
shl ebx, 8
call fcn.00558380
mov ecx, dword [esp + 0x380]
and eax, 0xff
add ebx, eax
push ebx
push 0x609488
push ecx
jmp 0x51cafc
push 0x74
lea ecx, [esp + 0x14]
call fcn.00558380
and eax, 0xff
lea edx, [eax + eax*2]
shl edx, 9
push edx
mov eax, dword [esp + 0x384]
push 0x609488
push eax
call fcn.005bcf3d
add esp, 0xc
lea ecx, [esp + 0x10]
mov byte [esp + 0x35c], 0
call fcn.005581a0
mov eax, dword [esp + 0x378]
mov esi, dword [esp + 0x374]
cmp esi, eax
mov dword [esp + 0x35c], 6
mov edi, eax
je 0x51cb49
mov ecx, esi
call fcn.005581a0
add esi, 4
cmp esi, edi
jne 0x51cb34
mov esi, dword [esp + 0x374]
push esi
call fcn.005bc500
add esp, 4
xor eax, eax
mov dword [esp + 0x374], eax
mov dword [esp + 0x378], eax
mov dword [esp + 0x37c], eax
mov byte [esp + 0x35c], 5
lea ecx, [esp + 0x36c]
call fcn.005581a0
lea ecx, [esp + 0x364]
mov dword [esp + 0x35c], 0xffffffff
call fcn.005581a0
mov ecx, dword [esp + 0x354]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x350
ret 0x28