Function at 0x4d2e80
Capabilities:
Check os version

Disassembly:
push 0xffffffffffffffff
push 0x6c2349
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x150
push ebx
xor eax, eax
push esi
push edi
mov esi, ecx
mov dword [esp + 0x30], eax
mov cl, byte [esp + 0x2f]
mov dword [esp + 0x164], 1
mov byte [esp + 0x14], cl
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x164], 2
call fcn.0061d780
push 6
push 0x715e00
lea ecx, [esp + 0x18]
mov byte [esp + 0x16c], 3
call fcn.0061d820
push 4
lea ecx, [esp + 0x174]
mov byte [esp + 0x168], 4
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
call fcn.0061daa0
mov bl, al
push 5
and ebx, 0xff
lea ecx, [esp + 0x174]
shl ebx, 8
call fcn.0061daa0
and eax, 0xff
add eax, ebx
cmp eax, 0x101
jg 0x4d380b
je 0x4d37ec
dec eax
cmp eax, 0x10
ja case.default.0x4d4812
jmp dword [eax*4 + 0x4d4d84]
mov al, byte [esi + 0x2e8]
and eax, 3
cmp eax, 3
ja case.default.0x4d2f64
jmp dword [eax*4 + 0x4d4dc8]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1610
jmp 0x4d2fa3
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1777
push eax
jmp 0x4d2fa4
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1778
push ecx
jmp 0x4d2fa4
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1779
push edx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0xa0]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6dd1fc]
mov ebx, ecx
mov byte [esp + 0x164], 5
cmp eax, ebx
jae 0x4d2fef
mov ebx, eax
lea edx, [esp + 0x14]
cmp edx, esi
jne 0x4d3014
push eax
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
jmp 0x4d309d
test ebx, ebx
jbe 0x4d3061
cmp ebx, ecx
jne 0x4d3061
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3028
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d3061
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3045
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4d309d
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d309d
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d307d
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x1c], ebx
mov byte [ecx + ebx], 0
mov eax, dword [esp + 0xa0]
mov byte [esp + 0x164], 4
test eax, eax
je case.default.0x4d4812
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4d453f
cmp al, 0xff
je 0x4d453f
dec al
mov byte [ecx], al
jmp case.default.0x4d4812
mov al, byte [esi + 0x2ed]
and eax, 3
cmp eax, 3
ja case.default.0x4d30e1
jmp dword [eax*4 + 0x4d4dd8]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1107
push edx
jmp 0x4d3113
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1778
push eax
jmp 0x4d3113
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1779
push ecx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x150]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6dd1fc]
mov ebx, ecx
mov byte [esp + 0x164], 6
cmp eax, ebx
jae 0x4d315e
mov ebx, eax
lea edx, [esp + 0x14]
cmp edx, esi
jne 0x4d3192
push eax
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
mov eax, dword [esp + 0x150]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
test ebx, ebx
jbe 0x4d322b
cmp ebx, ecx
jne 0x4d322b
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d31ae
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d322b
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4d31d9
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4d31d0
cmp al, 0xff
je 0x4d31d0
dec al
mov byte [ecx], al
jmp 0x4d31d9
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d31fd
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x164], 4
mov byte [eax - 1], cl
mov eax, dword [esp + 0x150]
jmp 0x4d30ac
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d3265
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d3247
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov eax, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
call fcn.00414210
mov eax, dword [esp + 0x150]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
xor eax, eax
mov al, byte [esi + 0x2ec]
cmp eax, 3
ja case.default.0x4d3286
jmp dword [eax*4 + 0x4d4de8]
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1107
push ecx
jmp 0x4d32d5
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1106
jmp 0x4d32d4
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31ab
push eax
jmp 0x4d32d5
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ac
push ecx
jmp 0x4d32d5
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x12ff
push edx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0xe0]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov ecx, dword [esi + 8]
mov eax, dword [0x6dd1fc]
mov ebx, ecx
mov byte [esp + 0x164], 7
cmp eax, ebx
jae 0x4d3320
mov ebx, eax
lea edx, [esp + 0x14]
cmp edx, esi
jne 0x4d3354
push eax
push ebx
lea ecx, [esp + 0x1c]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
mov eax, dword [esp + 0xe0]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
test ebx, ebx
jbe 0x4d33ed
cmp ebx, ecx
jne 0x4d33ed
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3370
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d33ed
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4d339b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4d3392
cmp al, 0xff
je 0x4d3392
dec al
mov byte [ecx], al
jmp 0x4d339b
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d33bf
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x164], 4
mov byte [eax - 1], cl
mov eax, dword [esp + 0xe0]
jmp 0x4d30ac
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d3427
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d3409
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov eax, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
call fcn.00414210
mov eax, dword [esp + 0xe0]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
mov dl, byte [esi + 0x2e9]
lea ecx, [esp + 0x14]
push ecx
push 0x1243
and dl, 1
push 0x1252
push edx
mov ecx, esi
call fcn.004d5020
jmp case.default.0x4d4812
mov cl, byte [esi + 0x2ea]
lea eax, [esp + 0x14]
push eax
push 0x1056
and cl, 1
push 0x1055
push ecx
mov ecx, esi
call fcn.004d5020
jmp case.default.0x4d4812
mov al, byte [esi + 0x2ec]
lea edx, [esp + 0x14]
push edx
push 0x1227
and al, 2
push 0x1173
push eax
mov ecx, esi
call fcn.004d5020
jmp case.default.0x4d4812
mov dl, byte [esi + 0x2ee]
lea ecx, [esp + 0x14]
push ecx
push 0x1243
and dl, 2
push 0x1252
push edx
mov ecx, esi
call fcn.004d5020
jmp case.default.0x4d4812
mov cl, byte [esi + 0x2ed]
lea eax, [esp + 0x14]
push eax
push 0x314f
and cl, 1
push 0x1173
push ecx
mov ecx, esi
call fcn.004d5020
jmp case.default.0x4d4812
xor edx, edx
mov dl, byte [esi + 0x2e8]
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
mov al, byte [esi + 0x2e9]
and eax, 0xf
dec eax
cmp eax, 3
ja case.default.0x4d351b
jmp dword [eax*4 + 0x4d4df8]
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1543
push ecx
jmp 0x4d356a
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1544
jmp 0x4d3569
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1545
push eax
jmp 0x4d356a
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1942
push ecx
jmp 0x4d356a
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1539
push edx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x80]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x164], 8
cmp edi, ebx
jae 0x4d35b6
mov ebx, edi
lea edx, [esp + 0x14]
cmp edx, esi
jne 0x4d3639
cmp dword [esp + 0x1c], ebx
jae 0x4d35c9
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebx
cmp eax, edi
jae 0x4d35de
mov edi, eax
test edi, edi
jbe 0x4d3618
mov ecx, dword [esp + 0x18]
sub eax, edi
add ecx, ebx
push eax
lea edx, [ecx + edi]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push 0
push esi
call fcn.00414230
test al, al
je 0x4d3618
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
mov eax, dword [esp + 0x80]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
test ebx, ebx
jbe 0x4d3698
cmp ebx, eax
jne 0x4d3698
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d364d
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d3698
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d366a
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x164], 4
mov byte [eax - 1], cl
mov eax, dword [esp + 0x80]
jmp 0x4d30ac
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d36d2
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d36b4
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov edx, ecx
push ebx
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 + 0x18]
call fcn.00414210
mov eax, dword [esp + 0x80]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
mov cl, byte [esi + 0x2e9]
lea eax, [esp + 0x14]
push eax
push 0x1252
and cl, 4
push 0x1243
push ecx
mov ecx, esi
call fcn.004d5020
jmp case.default.0x4d4812
xor edx, edx
lea eax, [esp + 0x38]
mov dl, byte [esi + 0x2eb]
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
fmul qword [0x6dd240]
fstp qword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
push ecx
push edx
push str._.2f
push eax
call fcn.006a6fa5
add esp, 0x10
jmp 0x4d476b
xor eax, eax
mov al, byte [esi + 0x2ec]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
fmul qword [0x6de810]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
xor ecx, ecx
mov cl, byte [esi + 0x2e8]
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
fmul qword [0x6de810]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
xor edx, edx
mov dl, byte [esi + 0x2ed]
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
fmul qword [0x6de810]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
mov cl, byte [esi + 0x2eb]
lea eax, [esp + 0x14]
push eax
push 0x1061
and cl, 0x40
push 0x1060
push ecx
mov ecx, esi
call fcn.004d5020
jmp case.default.0x4d4812
mov al, byte [esi + 0x2eb]
lea edx, [esp + 0x14]
push edx
push 0x1346
and al, 0x80
push 0x1345
push eax
mov ecx, esi
call fcn.004d5020
jmp case.default.0x4d4812
xor ecx, ecx
mov cl, byte [esi + 0x2eb]
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
fmul qword [0x6de808]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
cmp eax, 0x201
jg 0x4d4804
je 0x4d454d
add eax, 0xfffffefe
cmp eax, 0xc
ja case.default.0x4d4812
jmp dword [eax*4 + 0x4d4e08]
xor edx, edx
mov dl, byte [esi + 0x2e8]
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
fmul qword [0x6de808]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
xor eax, eax
mov al, byte [esi + 0x2e9]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
fmul qword [0x6de808]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
xor ecx, ecx
mov cl, byte [esi + 0x2ea]
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
fmul qword [0x6de808]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
mov al, byte [esi + 0x2e8]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d38a3
jmp dword [eax*4 + 0x4d4e3c]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1290
push edx
jmp 0x4d391e
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31ad
jmp 0x4d391d
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ae
push ecx
jmp 0x4d391e
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31af
push edx
jmp 0x4d391e
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b0
jmp 0x4d391d
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b1
push ecx
jmp 0x4d391e
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b2
push edx
jmp 0x4d391e
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b3
push eax
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x120]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x164], 9
cmp edi, ebx
jae 0x4d396a
mov ebx, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4d39ee
cmp dword [esp + 0x1c], ebx
jae 0x4d397d
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebx
cmp eax, edi
jae 0x4d3992
mov edi, eax
test edi, edi
jbe 0x4d39cd
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [ebx + edx]
lea edx, [edi + ecx]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push 0
push esi
call fcn.00414230
test al, al
je 0x4d39cd
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
mov eax, dword [esp + 0x120]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
test ebx, ebx
jbe 0x4d3a4d
cmp ebx, eax
jne 0x4d3a4d
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3a02
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d3a4d
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3a1f
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x164], 4
mov byte [eax - 1], cl
mov eax, dword [esp + 0x120]
jmp 0x4d30ac
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d3a87
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d3a69
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov eax, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
call fcn.00414210
mov eax, dword [esp + 0x120]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
mov al, byte [esi + 0x2e8]
and eax, 7
cmp eax, 7
ja case.default.0x4d3aad
jmp dword [eax*4 + 0x4d4e5c]
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1290
push ecx
jmp 0x4d3b28
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31ad
jmp 0x4d3b27
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31ae
push eax
jmp 0x4d3b28
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31af
push ecx
jmp 0x4d3b28
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b0
jmp 0x4d3b27
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b1
push eax
jmp 0x4d3b28
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b2
push ecx
jmp 0x4d3b28
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b3
push edx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x50]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x164], 0xa
cmp edi, ebx
jae 0x4d3b71
mov ebx, edi
lea edx, [esp + 0x14]
cmp edx, esi
jne 0x4d3bf1
cmp dword [esp + 0x1c], ebx
jae 0x4d3b84
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebx
cmp eax, edi
jae 0x4d3b99
mov edi, eax
test edi, edi
jbe 0x4d3bd3
mov ecx, dword [esp + 0x18]
sub eax, edi
add ecx, ebx
push eax
lea edx, [edi + ecx]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push 0
push esi
call fcn.00414230
test al, al
je 0x4d3bd3
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
mov eax, dword [esp + 0x50]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
test ebx, ebx
jbe 0x4d3c4d
cmp ebx, eax
jne 0x4d3c4d
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3c05
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d3c4d
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3c22
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x164], 4
mov byte [eax - 1], cl
mov eax, dword [esp + 0x50]
jmp 0x4d30ac
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d3c87
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d3c69
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov edx, ecx
push ebx
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 + 0x18]
call fcn.00414210
mov eax, dword [esp + 0x50]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
mov al, byte [esi + 0x2e9]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d3cad
jmp dword [eax*4 + 0x4d4e7c]
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1290
push eax
jmp 0x4d3d28
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ad
jmp 0x4d3d27
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31ae
push edx
jmp 0x4d3d28
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31af
push eax
jmp 0x4d3d28
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b0
jmp 0x4d3d27
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b1
push edx
jmp 0x4d3d28
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b2
push eax
jmp 0x4d3d28
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b3
push ecx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x100]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x164], 0xb
cmp edi, ebx
jae 0x4d3d74
mov ebx, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4d3df8
cmp dword [esp + 0x1c], ebx
jae 0x4d3d87
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebx
cmp eax, edi
jae 0x4d3d9c
mov edi, eax
test edi, edi
jbe 0x4d3dd7
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [ebx + edx]
lea edx, [edi + ecx]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push 0
push esi
call fcn.00414230
test al, al
je 0x4d3dd7
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
mov eax, dword [esp + 0x100]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
test ebx, ebx
jbe 0x4d3e57
cmp ebx, eax
jne 0x4d3e57
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3e0c
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d3e57
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d3e29
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x164], 4
mov byte [eax - 1], cl
mov eax, dword [esp + 0x100]
jmp 0x4d30ac
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d3e93
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d3e73
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x1c], ebx
mov byte [ebx + ecx], 0
mov eax, dword [esp + 0x100]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
xor edx, edx
mov dl, byte [esi + 0x2eb]
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
fmul qword [0x6de808]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
xor eax, eax
mov al, byte [esi + 0x2e8]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
fmul qword [0x6de808]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
xor ecx, ecx
mov cl, byte [esi + 0x2e9]
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
fmul qword [0x6de808]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
xor edx, edx
mov dl, byte [esi + 0x2ea]
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
fmul qword [0x6de808]
fstp qword [esp + 0x24]
jmp case.default.0x4d4812
mov al, byte [esi + 0x2ea]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d3f38
jmp dword [eax*4 + 0x4d4e9c]
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1290
push eax
jmp 0x4d3fb3
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ad
jmp 0x4d3fb2
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31ae
push edx
jmp 0x4d3fb3
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31af
push eax
jmp 0x4d3fb3
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b0
jmp 0x4d3fb2
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b1
push edx
jmp 0x4d3fb3
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b2
push eax
jmp 0x4d3fb3
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b3
push ecx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xc0]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x164], 0xc
cmp edi, ebx
jae 0x4d3fff
mov ebx, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4d4082
cmp dword [esp + 0x1c], ebx
jae 0x4d4012
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebx
cmp eax, edi
jae 0x4d4027
mov edi, eax
test edi, edi
jbe 0x4d4061
mov edx, dword [esp + 0x18]
sub eax, edi
add ebx, edx
push eax
lea ecx, [edi + ebx]
push ecx
push ebx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push 0
push esi
call fcn.00414230
test al, al
je 0x4d4061
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
mov eax, dword [esp + 0xc0]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
test ebx, ebx
jbe 0x4d40e1
cmp ebx, eax
jne 0x4d40e1
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d4096
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d40e1
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d40b3
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x164], 4
mov byte [eax - 1], cl
mov eax, dword [esp + 0xc0]
jmp 0x4d30ac
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d411d
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d40fd
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x1c], ebx
mov byte [ebx + ecx], 0
mov eax, dword [esp + 0xc0]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
mov al, byte [esi + 0x2ea]
and eax, 7
cmp eax, 7
ja case.default.0x4d4143
jmp dword [eax*4 + 0x4d4ebc]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1290
push edx
jmp 0x4d41be
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31ad
jmp 0x4d41bd
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ae
push ecx
jmp 0x4d41be
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31af
push edx
jmp 0x4d41be
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b0
jmp 0x4d41bd
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b1
push ecx
jmp 0x4d41be
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b2
push edx
jmp 0x4d41be
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b3
push eax
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x140]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x164], 0xd
cmp edi, ebx
jae 0x4d420a
mov ebx, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4d428e
cmp dword [esp + 0x1c], ebx
jae 0x4d421d
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebx
cmp eax, edi
jae 0x4d4232
mov edi, eax
test edi, edi
jbe 0x4d426d
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [ebx + edx]
lea edx, [edi + ecx]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push 0
push esi
call fcn.00414230
test al, al
je 0x4d426d
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
mov eax, dword [esp + 0x140]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
test ebx, ebx
jbe 0x4d42ed
cmp ebx, eax
jne 0x4d42ed
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d42a2
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d42ed
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d42bf
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x164], 4
mov byte [eax - 1], cl
mov eax, dword [esp + 0x140]
jmp 0x4d30ac
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d4329
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d4309
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x1c], ebx
mov byte [ebx + ecx], 0
mov eax, dword [esp + 0x140]
mov byte [esp + 0x164], 4
jmp 0x4d30ac
mov al, byte [esi + 0x2eb]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d4352
jmp dword [eax*4 + 0x4d4edc]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1290
push edx
jmp 0x4d43cd
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31ad
jmp 0x4d43cc
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ae
push ecx
jmp 0x4d43cd
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31af
push edx
jmp 0x4d43cd
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b0
jmp 0x4d43cc
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b1
push ecx
jmp 0x4d43cd
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b2
push edx
jmp 0x4d43cd
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b3
push eax
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x60]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov edi, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x164], 0xe
cmp edi, ebx
jae 0x4d4416
mov ebx, edi
lea ecx, [esp + 0x14]
cmp ecx, esi
jne 0x4d448b
cmp dword [esp + 0x1c], ebx
jae 0x4d4429
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, ebx
cmp eax, edi
jae 0x4d443e
mov edi, eax
test edi, edi
jbe 0x4d4479
mov edx, dword [esp + 0x18]
sub eax, edi
push eax
lea ecx, [edx + ebx]
lea edx, [ecx + edi]
push edx
push ecx
call fcn.006a6c70
mov esi, dword [esp + 0x28]
add esp, 0xc
sub esi, edi
lea ecx, [esp + 0x14]
push 0
push esi
call fcn.00414230
test al, al
je 0x4d4479
push esi
lea ecx, [esp + 0x18]
call fcn.00414210
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
jmp 0x4d4514
test ebx, ebx
jbe 0x4d44d8
cmp ebx, eax
jne 0x4d44d8
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d449f
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4d44d8
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d44bc
mov eax, 0x6dd1f8
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x1c], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x20], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4d4514
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d4514
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d44f4
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x1c], ebx
mov byte [ecx + ebx], 0
mov eax, dword [esp + 0x60]
mov byte [esp + 0x164], 4
test eax, eax
je case.default.0x4d4812
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4d453f
cmp al, 0xff
je 0x4d453f
dec al
mov byte [ecx], al
jmp case.default.0x4d4812
push ecx
call fcn.006a64d0
add esp, 4
jmp case.default.0x4d4812
mov al, byte [esi + 0x2e8]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d4562
jmp dword [eax*4 + 0x4d4efc]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1643
push edx
jmp 0x4d45dd
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1107
jmp 0x4d45dc
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1730
push ecx
jmp 0x4d45dd
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b4
push edx
jmp 0x4d45dd
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b5
jmp 0x4d45dc
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ab
push ecx
jmp 0x4d45dd
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1780
push edx
jmp 0x4d45dd
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b6
push eax
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x70]
push eax
call fcn.0061ca80
add esp, 8
mov ebx, eax
mov esi, dword [0x6dd1fc]
mov edi, dword [ebx + 8]
cmp esi, edi
mov byte [esp + 0x164], 0xf
jae 0x4d4624
mov edi, esi
lea ecx, [esp + 0x14]
cmp ecx, ebx
jne 0x4d4699
cmp dword [esp + 0x1c], edi
jae 0x4d4637
call fcn.006a6707
lea ecx, [esp + 0x14]
call fcn.00414b70
mov eax, dword [esp + 0x1c]
sub eax, edi
cmp eax, esi
jae 0x4d464c
mov esi, eax
test esi, esi
jbe 0x4d4687
mov edx, dword [esp + 0x18]
sub eax, esi
push eax
lea ecx, [edx + edi]
lea eax, [ecx + esi]
push eax
push ecx
call fcn.004d5000
mov edi, dword [esp + 0x28]
add esp, 0xc
sub edi, esi
lea ecx, [esp + 0x14]
push 0
push edi
call fcn.00414230
test al, al
je 0x4d4687
push edi
lea ecx, [esp + 0x18]
call fcn.00414210
push 0
push 0
lea ecx, [esp + 0x1c]
call fcn.004140f0
jmp 0x4d473e
test edi, edi
jbe 0x4d470e
mov ecx, ebx
call fcn.004cfb90
cmp edi, eax
jne 0x4d470e
mov ecx, ebx
call fcn.004ff060
push eax
lea ecx, [esp + 0x18]
call fcn.004cfba0
cmp byte [eax], 0xfe
jae 0x4d470e
lea ecx, [esp + 0x14]
push ebx
push ecx
call fcn.004d52f0
add esp, 8
test al, al
je 0x4d470e
push 1
lea ecx, [esp + 0x18]
call fcn.004138c0
mov ecx, ebx
call fcn.004ff060
mov ecx, ebx
mov dword [esp + 0x18], eax
call fcn.004cfb90
mov ecx, ebx
mov dword [esp + 0x1c], eax
call fcn.004d52e0
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x14]
push edx
mov dword [esp + 0x24], eax
call fcn.004cfba0
inc byte [eax]
jmp 0x4d473e
push 1
push edi
lea ecx, [esp + 0x1c]
call fcn.00414230
test al, al
je 0x4d473e
push edi
mov ecx, ebx
call fcn.004ff060
push eax
mov eax, dword [esp + 0x20]
push eax
call fcn.004cf7f0
add esp, 0xc
lea ecx, [esp + 0x14]
push edi
call fcn.00414210
mov byte [esp + 0x164], 4
lea ecx, [esp + 0x6c]
call fcn.00419a10
fld qword [esp + 0x24]
call fcn.006a7274
push eax
lea ecx, [esp + 0x3c]
push 0x713498
push ecx
call fcn.006a6fa5
add esp, 0xc
lea ecx, [esp + 0x14]
call fcn.004cfb90
test eax, eax
jne 0x4d4786
lea edx, [esp + 0x38]
lea ecx, [esp + 0x14]
push edx
call fcn.004cfae0
mov esi, dword [esp + 0x16c]
lea eax, [esp + 0x14]
push eax
mov ecx, esi
call fcn.00413060
mov dword [esp + 0x30], 1
lea ecx, [esp + 0x10]
mov byte [esp + 0x164], 3
call fcn.0061d8c0
lea ecx, [esp + 0x34]
mov byte [esp + 0x164], 2
call fcn.0061d8c0
lea ecx, [esp + 0x14]
mov byte [esp + 0x164], 1
call fcn.00419a10
lea ecx, [esp + 0x170]
mov byte [esp + 0x164], 0
call fcn.0061d8c0
mov ecx, dword [esp + 0x15c]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
add esp, 0x15c
ret 8
add eax, 0xfffffdfe
cmp eax, 5
ja case.default.0x4d4812
jmp dword [eax*4 + 0x4d4f1c]
mov al, byte [esi + 0x2e9]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d482e
jmp dword [eax*4 + 0x4d4f34]
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1643
push ecx
jmp 0x4d48a9
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1107
jmp 0x4d48a8
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1730
push eax
jmp 0x4d48a9
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b4
push ecx
jmp 0x4d48a9
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b5
jmp 0x4d48a8
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31ab
push eax
jmp 0x4d48a9
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1780
push ecx
jmp 0x4d48a9
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b6
push edx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x90]
push ecx
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x168], 0x10
call fcn.00452520
mov byte [esp + 0x164], 4
lea ecx, [esp + 0x8c]
jmp 0x4d474a
mov al, byte [esi + 0x2ea]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d4915
jmp dword [eax*4 + 0x4d4f54]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1643
push edx
jmp 0x4d4990
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1107
jmp 0x4d498f
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1730
push ecx
jmp 0x4d4990
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b4
push edx
jmp 0x4d4990
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b5
jmp 0x4d498f
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ab
push ecx
jmp 0x4d4990
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1780
push edx
jmp 0x4d4990
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b6
push eax
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xb0]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x168], 0x11
call fcn.00452520
mov byte [esp + 0x164], 4
lea ecx, [esp + 0xac]
jmp 0x4d474a
mov al, byte [esi + 0x2eb]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d49fc
jmp dword [eax*4 + 0x4d4f74]
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1643
push ecx
jmp 0x4d4a77
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1107
jmp 0x4d4a76
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1730
push eax
jmp 0x4d4a77
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b4
push ecx
jmp 0x4d4a77
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b5
jmp 0x4d4a76
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31ab
push eax
jmp 0x4d4a77
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1780
push ecx
jmp 0x4d4a77
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b6
push edx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0xd0]
push ecx
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x168], 0x12
call fcn.00452520
mov byte [esp + 0x164], 4
lea ecx, [esp + 0xcc]
jmp 0x4d474a
mov al, byte [esi + 0x2ec]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d4ae3
jmp dword [eax*4 + 0x4d4f94]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1643
push edx
jmp 0x4d4b5e
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1107
jmp 0x4d4b5d
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1730
push ecx
jmp 0x4d4b5e
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b4
push edx
jmp 0x4d4b5e
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b5
jmp 0x4d4b5d
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ab
push ecx
jmp 0x4d4b5e
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1780
push edx
jmp 0x4d4b5e
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b6
push eax
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xf0]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x168], 0x13
call fcn.00452520
mov byte [esp + 0x164], 4
lea ecx, [esp + 0xec]
jmp 0x4d474a
mov al, byte [esi + 0x2ed]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d4bca
jmp dword [eax*4 + 0x4d4fb4]
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1643
push ecx
jmp 0x4d4c45
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1107
jmp 0x4d4c44
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1730
push eax
jmp 0x4d4c45
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31b4
push ecx
jmp 0x4d4c45
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b5
jmp 0x4d4c44
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31ab
push eax
jmp 0x4d4c45
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1780
push ecx
jmp 0x4d4c45
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b6
push edx
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x110]
push ecx
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x168], 0x14
call fcn.00452520
mov byte [esp + 0x164], 4
lea ecx, [esp + 0x10c]
jmp 0x4d474a
mov al, byte [esi + 0x2ee]
shr eax, 3
and eax, 7
cmp eax, 7
ja case.default.0x4d4cb1
jmp dword [eax*4 + 0x4d4fd4]
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1643
push edx
jmp 0x4d4d2c
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x1107
jmp 0x4d4d2b
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x1730
push ecx
jmp 0x4d4d2c
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x31b4
push edx
jmp 0x4d4d2c
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b5
jmp 0x4d4d2b
push ecx
mov ecx, esp
mov dword [esp + 0x10], esp
push 0x31ab
push ecx
jmp 0x4d4d2c
push ecx
mov edx, esp
mov dword [esp + 0x10], esp
push 0x1780
push edx
jmp 0x4d4d2c
push ecx
mov eax, esp
mov dword [esp + 0x10], esp
push 0x31b6
push eax
mov ecx, esi
call fcn.004d5240
lea ecx, [esp + 0x14]
call fcn.0061dab0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x10], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x130]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x168], 0x15
call fcn.00452520
mov byte [esp + 0x164], 4
lea ecx, [esp + 0x12c]
jmp 0x4d474a