Function at 0x42d866
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x460
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x5c], 0x59ee5bf1
mov dword [esp + 0x60], 0x5df95fe3
mov dword [esp + 0x64], 0x512053ef
mov dword [esp + 0x68], 0x55de57eb
mov dword [esp + 0x6c], 0xa9aaabef
mov dword [esp + 0x28], 0
mov eax, dword [esp + 0x28]
cmp eax, 0x13
ja 0x42cb7b
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x28]
movzx eax, byte [esp + eax + 0x5c]
push dword [esp + 0x28]
push eax
call fcn.00430630
add esp, 8
mov ecx, dword [esp + 0x28]
mov byte [esp + ecx + 0x5c], al
inc dword [esp + 0x28]
mov eax, dword [esp + 0x28]
cmp eax, 0x14
jb 0x42cb50
lea ebx, [esp + 0x5c]
lea ecx, [esp + 0x4c]
push ebx
call fcn.004439e0
shr eax, 0x1f
xor ecx, ecx
jmp dword [eax*4 + 0x45227c]
lea ecx, [esp + 0x4c]
push 0x410
call fcn.00443bf0
not eax
shr eax, 0x1f
xor ecx, ecx
jmp dword [eax*4 + 0x452284]
mov dword [esp + 0x5c], 0x7aa56c7b
mov dword [esp + 0x60], 0x54765b7c
mov dword [esp + 0x64], 0x404f4567
mov dword [esp + 0x68], 0x7d4a4e63
mov dword [esp + 0x6c], 0x5c6d6a7a
mov dword [esp + 0x70], 0x55686e6b
mov dword [esp + 0x74], 0x5253766e
mov dword [esp + 0x78], 0x5e895079
mov dword [esp + 0x7c], 0x7e746e76
mov dword [esp + 0x80], 0xa67d936f
mov dword [esp + 0x84], 0x396e8787
mov word [esp + 0x88], 0
mov dword [esp + 0x28], 0
mov eax, dword [esp + 0x28]
cmp eax, 0x2d
ja 0x42cc5b
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x28]
movzx eax, byte [esp + eax + 0x5c]
push dword [esp + 0x28]
push eax
call fcn.004306c0
add esp, 8
mov ecx, dword [esp + 0x28]
mov byte [esp + ecx + 0x5c], al
inc dword [esp + 0x28]
mov eax, dword [esp + 0x28]
cmp eax, 0x2e
jb 0x42cc30
lea eax, [esp + 0x28]
lea ecx, [esp + 0x4c]
push 0
push 0x2b
push ebx
push eax
call fcn.00444760
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
xor eax, eax
mov dword [esp + 0x34], ecx
cmp edi, ecx
sete al
jmp dword [eax*4 + 0x45229c]
mov esi, dword [esp + 0x34]
mov eax, esi
sub eax, edi
sar eax, 3
imul eax, eax, 0x421
push eax
call fcn.0040c8b0
add esp, 4
mov dword [esp + 0x3c], 0
xor ecx, ecx
cmp edi, esi
setne cl
mov dword [esp + 0x48], eax
mov dword [esp + 0x38], eax
jmp dword [ecx*4 + 0x4522c4]
jmp dword [0x4522d8]
mov eax, dword [esp + 0x3c]
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x4522dc]
mov eax, dword [case.0x42cee0.5]
mov esi, dword [esp + 0x48]
jmp case.0x42cee0.2
jmp dword [0x4522ac]
xor ecx, ecx
test edi, edi
jne 0x42d31e
jmp case.0x42cb8e.1
add edi, 8
xor eax, eax
cmp edi, dword [esp + 0x34]
setne al
jmp dword [eax*4 + 0x4522c4]
mov esi, dword [edi]
mov dword [esp + 0x44], edi
mov edi, dword [edi + 4]
push 0x400
push 0
push ebx
call fcn.0040c930
add esp, 0xc
lea eax, [esp + 0x18]
lea ecx, [esp + 0x4c]
push eax
push 0
push 0x400
push ebx
push edi
push esi
call fcn.00444550
cmp eax, 0xc0000000
setae al
mov ecx, dword [esp + 0x18]
or ecx, dword [esp + 0x1c]
sete cl
or cl, al
movzx eax, cl
jmp dword [eax*4 + 0x4522f4]
mov eax, 1
mov edi, dword [esp + 0x44]
jmp dword [eax*4 + 0x4522fc]
xor eax, eax
mov edi, dword [esp + 0x44]
jmp dword [eax*4 + 0x4522fc]
mov byte [esp + 0x45b], 0
movzx eax, byte [esp + 0x5c]
xor esi, esi
test al, al
je 0x42cdd1
mov ecx, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x2e
je 0x42cdcf
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x42cdc0
jmp 0x42cdd1
mov esi, ecx
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x452304]
movzx eax, byte [esi + 1]
inc esi
mov dword [esp + 0x20], 0
test al, al
je 0x42ce13
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x2e
je 0x42ce0f
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x42ce00
jmp 0x42ce13
mov dword [esp + 0x20], ecx
xor eax, eax
cmp dword [esp + 0x20], 0
setne al
mov dword [esp + 0x14], esi
jmp dword [eax*4 + 0x45230c]
jmp dword [0x452318]
lea ebx, [esp + 0x5c]
push esi
call fcn.00404c10
add esp, 4
add edi, 8
xor eax, eax
cmp edi, dword [esp + 0x34]
setne al
jmp dword [eax*4 + 0x4522c4]
jmp dword [0x452324]
push dword [esp + 8]
mov esi, eax
call fcn.0040c8c0
mov eax, esi
add esp, 4
mov esi, eax
push eax
call fcn.00404660
add esp, 4
mov ebx, eax
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x45232c]
mov dword [esp + 0x18], 0x59fcd0f1
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], 0
mov eax, dword [esp + 0x24]
cmp eax, 7
ja 0x42cecb
mov eax, dword [esp + 0x24]
movzx eax, byte [esp + eax + 0x18]
push dword [esp + 0x24]
push eax
call fcn.00430730
add esp, 8
mov ecx, dword [esp + 0x24]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 0x24]
mov eax, dword [esp + 0x24]
cmp eax, 8
jb case.default.0x42cee0
lea eax, [esp + 0x18]
push eax
push ebx
call fcn.00404420
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x452334]
lea ebx, [esp + 0x5c]
mov edx, dword [esp + 0x38]
jmp 0x42cf29
movzx ecx, byte [eax]
test cl, cl
mov edx, dword [esp + 0x38]
je 0x42cf1d
inc eax
lea ebx, [esp + 0x5c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x42cf10
jmp 0x42cf21
lea ebx, [esp + 0x5c]
mov word [edx], 0x203a
add edx, 2
movzx eax, byte [esp + 0x5c]
test al, al
je 0x42cf4b
lea ecx, [esp + 0x5d]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42cf40
mov byte [edx], 0xa
inc edx
mov dword [esp + 0x38], edx
mov al, 1
mov dword [esp + 0x3c], eax
jmp 0x42ce32
mov eax, dword [esp + 0x20]
mov ecx, eax
sub ecx, esi
lea edx, [ecx + ecx*2]
shr edx, 2
movzx eax, byte [eax - 1]
cmp eax, 0x3d
je 0x42cf7c
cmp eax, 0x2e
jne 0x42cf83
mov eax, edx
not eax
lea edx, [eax + edx*2]
movzx eax, byte [esi + ecx - 2]
cmp eax, 0x3d
mov dword [esp + 0x10], ecx
je 0x42cf96
cmp eax, 0x2e
jne 0x42cf97
dec edx
mov dword [esp + 0x40], edx
lea eax, [edx + 1]
push eax
call fcn.0040c8b0
add esp, 4
mov dword [esp + 8], eax
cmp dword [esp + 0x20], esi
je 0x42d0b0
xor ebx, ebx
mov edi, 2
jmp 0x42cfd0
lea eax, [edi + 4]
add edi, 2
cmp edi, edx
mov edi, eax
jae 0x42d0b0
mov dword [esp + 0xc], ebx
mov esi, dword [esp + 0x14]
movzx eax, byte [esi + edi - 2]
push eax
call fcn.00421a90
add esp, 4
mov ebx, eax
movzx eax, byte [esi + edi - 1]
push eax
call fcn.00421a90
add esp, 4
shl bl, 2
mov ecx, eax
shr cl, 4
and cl, 3
or cl, bl
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov byte [edx + ebx], cl
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + 1]
mov edx, dword [esp + 0x10]
cmp edi, edx
jae 0x42cfc0
mov byte [esp + 7], al
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + edi]
push eax
call fcn.00421a90
mov edx, dword [esp + 0x14]
add esp, 4
cmp al, 0x40
je 0x42cfc0
mov ch, al
movzx eax, byte [esp + 7]
shl al, 4
mov cl, ch
shr cl, 2
and cl, 0xf
or cl, al
mov esi, dword [esp + 0xc]
lea ebx, [esi + 2]
mov eax, dword [esp + 8]
mov byte [eax + esi + 1], cl
lea eax, [edi + 1]
cmp eax, edx
jae 0x42cfc0
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + edi + 1]
push eax
mov byte [esp + 0xb], ch
call fcn.00421a90
movzx ecx, byte [esp + 0xb]
mov edx, dword [esp + 0x14]
add esp, 4
cmp al, 0x40
je 0x42cfc0
shl cl, 6
add al, cl
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov byte [ecx + ebx + 2], al
add ebx, 3
jmp 0x42cfc0
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 8]
mov byte [ecx + eax], 0
push ecx
call fcn.00403b90
add esp, 4
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x14]
jmp dword [0x452320]
mov eax, dword [esp + 0x20]
mov ecx, eax
sub ecx, esi
lea edx, [ecx + ecx*2]
shr edx, 2
movzx eax, byte [eax - 1]
cmp eax, 0x3d
mov dword [esp + 0x10], ecx
je 0x42d0f3
cmp eax, 0x2e
jne 0x42d0fa
mov eax, edx
not eax
lea edx, [eax + edx*2]
movzx eax, byte [esi + ecx - 2]
cmp eax, 0x3d
je 0x42d109
cmp eax, 0x2e
jne 0x42d10a
dec edx
mov dword [esp + 0x40], edx
lea eax, [edx + 1]
push eax
call fcn.0040c8b0
add esp, 4
mov dword [esp + 8], eax
cmp dword [esp + 0x20], esi
je 0x42d230
xor ebx, ebx
mov edi, 2
jmp 0x42d150
lea eax, [edi + 4]
add edi, 2
cmp edi, edx
mov edi, eax
jae 0x42d230
mov dword [esp + 0xc], ebx
mov esi, dword [esp + 0x14]
movzx eax, byte [esi + edi - 2]
push eax
call fcn.00421a90
add esp, 4
mov ebx, eax
movzx eax, byte [esi + edi - 1]
push eax
call fcn.00421a90
add esp, 4
shl bl, 2
mov ecx, eax
shr cl, 4
and cl, 3
or cl, bl
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov byte [edx + ebx], cl
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + 1]
mov edx, dword [esp + 0x10]
cmp edi, edx
jae 0x42d140
mov byte [esp + 7], al
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + edi]
push eax
call fcn.00421a90
mov edx, dword [esp + 0x14]
add esp, 4
cmp al, 0x40
je 0x42d140
movzx ecx, byte [esp + 7]
shl cl, 4
mov edx, eax
shr dl, 2
and dl, 0xf
or dl, cl
mov esi, dword [esp + 0xc]
lea ebx, [esi + 2]
mov ecx, dword [esp + 8]
mov byte [ecx + esi + 1], dl
mov edx, dword [esp + 0x10]
lea ecx, [edi + 1]
cmp ecx, edx
jae 0x42d140
mov ecx, dword [esp + 0x14]
movzx ecx, byte [ecx + edi + 1]
push ecx
mov byte [esp + 0xb], al
call fcn.00421a90
mov edx, dword [esp + 0x14]
add esp, 4
movzx ecx, byte [esp + 7]
cmp al, 0x40
je 0x42d140
shl cl, 6
add al, cl
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov byte [ecx + ebx + 2], al
add ebx, 3
jmp 0x42d140
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 8]
mov byte [ecx + eax], 0
push ecx
call fcn.00403b90
add esp, 4
mov esi, dword [esp + 0x14]
jmp case.0x42ce21.3
mov edi, dword [esp + 0x38]
mov byte [edi], 0
mov dword [esp + 0x5c], 0x3d3a3b53
mov dword [esp + 0x60], 0x9393a3f
mov dword [esp + 0x64], 0xc303233
mov dword [esp + 0x68], 0x26123271
mov dword [esp + 0x6c], 0x356b2823
mov dword [esp + 0x70], 0x272d2229
mov dword [esp + 0x74], 0x191e6119
mov word [esp + 0x78], 0x6f1c
mov dword [esp + 0x7a], 0
mov word [esp + 0x7e], 0
mov esi, dword [esp + 0x48]
sub edi, esi
mov dword [esp + 0x18], 0
mov eax, dword [esp + 0x18]
cmp eax, 0x23
ja 0x42d2eb
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x18]
movzx eax, byte [esp + eax + 0x5c]
push dword [esp + 0x18]
push eax
call fcn.004307b0
add esp, 8
mov ecx, dword [esp + 0x18]
mov byte [esp + ecx + 0x5c], al
inc dword [esp + 0x18]
mov eax, dword [esp + 0x18]
cmp eax, 0x24
jb 0x42d2c0
lea eax, [esp + 0x5c]
mov ecx, dword [ebp + 8]
push edi
push esi
push eax
call fcn.0040d660
mov dword [esp + 0x3c], eax
mov eax, dword [case.0x42cee0.5]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x45234c]
jmp dword [0x452354]
cmp edi, dword [esp + 0x34]
je case.0x42cb8e.1
push edi
mov esi, ecx
call fcn.0040c8c0
mov ecx, esi
add esp, 4
mov ebx, ecx
lea ecx, [esp + 0x4c]
call fcn.00443d50
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esp + 0x3c]
and cl, 1
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x34], eax
test edi, edi
jne 0x42d31e
jmp case.0x42cb8e.1
push esi
call fcn.0040c8c0
add esp, 4
push esi
call fcn.0040c8c0
add esp, 4
jmp dword [0x452360]
int3
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x4523cc]
mov ecx, edi
nop
nop
nop
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne 0x42d3b0
sub eax, edi
cmp eax, 0xffffffd9
jge 0x42d749
mov eax, 0xffffffff
jmp 0x42d74c
xor edx, edx
test eax, eax
sete dl
xor ecx, ecx
jmp dword [edx*4 + 0x4523c4]
jmp dword [ecx*4 + 0x452364]
mov dword [esp + 0xc], 0x93c091f4
mov dword [esp + 0x10], 0xaff1adf1
mov dword [esp + 0x14], 0xabf9a9f1
mov dword [esp + 0x18], 0xa7f4a5c8
mov dword [esp + 0x1c], 0xa3c6a1c9
mov dword [esp + 0x20], 0xbfffbde9
mov dword [esp + 0x24], 0xbbe2b9fb
mov dword [esp + 0x28], 0xb7e0b5ed
mov dword [esp + 0x2c], 0xb3d6b1ed
mov dword [esp + 0x30], 0xcf99cd9f
mov dword [esp + 0x34], 0xcba6c996
mov dword [esp + 0x38], 0xc787c5ab
mov dword [esp + 0x3c], 0xc39fc192
mov dword [esp + 0x40], 0xdfb0ddb8
mov dword [esp + 0x44], 0xdbaed9b9
mov dword [esp + 0x48], 0xd7abd55a
mov dword [esp + 0x4c], 0xd381d1b4
mov dword [esp + 0x50], 0xef93ed60
mov dword [esp + 0x54], 0xeb9fe989
mov dword [esp + 0x58], 0xe5e4
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x4f
ja 0x42d4c6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00430ea0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x50
jb 0x42d4a0
lea eax, [esp + 0x70]
lea ebp, [esp + 0xc]
push 0
push 0
push esi
push eax
push ebp
call fcn.0044a7b0
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x45236c]
lea ebx, [esp + 0x78]
lea eax, [esp + 0x7c]
push ebx
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x90]
call fcn.0044abb0
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x452384]
mov ecx, dword [esp + 0x78]
lea eax, [ecx*2 + 2]
inc ecx
jns 0x42d52b
mov eax, 0xffffffff
push eax
call fcn.0040c8b0
add esp, 4
mov esi, eax
mov dword [esp + 0xc], 0x61f067df
mov dword [esp + 0x10], 0x5dee63ed
mov dword [esp + 0x14], 0x59ca5fff
mov dword [esp + 0x18], 0x55ea5bcc
mov dword [esp + 0x1c], 0x51da57f7
mov dword [esp + 0x20], 0x4d5253c8
lea eax, [esp + 0x24]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x1a
ja 0x42d5b6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00430f20
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x1b
jb 0x42d590
push ebx
push esi
push 0
push ebp
push dword [esp + 0x80]
call fcn.0044b180
add esp, 0x14
shr eax, 0x1f
mov edi, esi
jmp dword [eax*4 + 0x45238c]
xor edi, edi
jmp dword [0x452394]
push esi
call fcn.0040c8c0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, dword [esp + 0x70]
mov dword [esp + 0xc], 0xe0e7e6e5
mov dword [esp + 0x10], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
ja 0x42d646
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431cc0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x42d620
mov eax, dword [0x456088]
test eax, eax
je 0x42d6b0
mov ecx, dword [esp + 0xc]
xor edx, edx
mov ebx, dword [0x45608c]
nop
nop
nop
nop
nop
cmp dword [ebx + edx*8], 0x625b6034
je 0x42d69d
inc edx
cmp eax, edx
jne 0x42d660
jmp 0x42d6b0
mov eax, dword [case.0x42d4e0.4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, 4
xor edx, edx
cmp eax, 4
setb dl
mov esi, 0x20119
xor ecx, ecx
jmp dword [edx*4 + 0x4523bc]
mov eax, dword [ebx + edx*8 + 4]
cmp eax, ecx
jne case.default.0x42d6b7
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x45239c]
push ebp
call fcn.00449e10
add esp, 4
cmp dword [esp + 0xc], 1
sete cl
and cl, al
movzx ecx, cl
mov eax, 2
jmp dword [ecx*4 + 0x4523a4]
xor eax, eax
jmp dword [0x4523b8]
xor edx, edx
cmp eax, 4
setb dl
mov esi, 0x20119
xor ecx, ecx
jmp dword [edx*4 + 0x4523bc]
push esi
push 1
push dword [0x456090]
push eax
call fcn.00446c10
add esp, 0x10
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x45239c]
mov eax, 2
xor edx, edx
cmp eax, 4
setb dl
mov esi, 0x20119
xor ecx, ecx
jmp dword [edx*4 + 0x4523bc]
mov eax, dword [case.0x42d717.16]
jmp eax
xor eax, eax
jmp 0x42e453
add eax, 0x26
push eax
call fcn.0040c8b0
add esp, 4
mov ebp, eax
mov dword [esp + 0xc], 0xb759896c
mov dword [esp + 0x10], 0xb320b527
mov dword [esp + 0x14], 0xbf57b15a
mov dword [esp + 0x18], 0xbb5ebd57
mov dword [esp + 0x1c], 0xa735b957
mov dword [esp + 0x20], 0xa348a536
mov dword [esp + 0x24], 0xaf45a149
mov dword [esp + 0x28], 0xab30ad7e
mov dword [esp + 0x2c], 0x57bca944
mov word [esp + 0x30], 0x5554
mov dword [esp + 0x32], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x29
ja 0x42d7e6
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00430f90
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2a
jb 0x42d7c0
movzx ecx, word [edi]
mov eax, ebp
test cx, cx
je 0x42d811
lea edx, [edi + 2]
mov eax, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d800
mov word [eax], 0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x42d841
lea edx, [esp + 0xe]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d830
mov word [eax], 0
jmp dword [0x4523e4]
push edi
call fcn.0040c8c0
add esp, 4
xor eax, eax
cmp word [ebp], 0x2a
sete al
jmp dword [eax*4 + 0x4523ec]
xor eax, eax
cmp word [ebp], 0x2a
sete al
jmp dword [eax*4 + 0x4523ec]
mov dword [esp + 0xc], 0x93589153
mov dword [esp + 0x10], 0xaf4dad48
mov dword [esp + 0x14], 0xab5ca95f
mov dword [esp + 0x18], 0xa75fa55a
mov dword [esp + 0x1c], 0xa346a15f
mov dword [esp + 0x20], 0xbf49bd5f
mov dword [esp + 0x24], 0xbb44b94e
mov dword [esp + 0x28], 0xb749b54d
mov dword [esp + 0x2c], 0xb33cb186
mov dword [esp + 0x30], 0x4fb04db0
mov dword [esp + 0x34], 0x4948
mov byte [esp + 0x38], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2c
ja 0x42d916
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431000
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2d
jb 0x42d8f0
lea eax, [esp + 0xc]
push 0
push eax
push ebp
call dword [sym.imp.KERNEL32.dll_CopyFileW]
lea eax, [esp + 0x70]
push 0x60
push 3
push 0x120089
push eax
push ebp
call fcn.0044a040
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4523f4]
xor esi, esi
mov eax, dword [case.0x42dc15.13]
xor ebx, ebx
jmp case.0x42dc15.10
lea eax, [esp + 0x7c]
push 0
push eax
push dword [esp + 0x78]
call fcn.0044a3c0
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
xor esi, esi
jmp dword [eax*4 + 0x4523fc]
mov esi, dword [esp + 0x7c]
lea eax, [esi + 1]
push eax
call fcn.0040c8b0
add esp, 4
push 0
push esi
mov dword [esp + 0x10], eax
push eax
push dword [esp + 0x7c]
call fcn.0044a4a0
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
xor esi, esi
jmp dword [eax*4 + 0x452404]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 8]
mov byte [edi + esi], 0
push 0x20
call fcn.0040c8b0
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [esp + 0x84], eax
mov ecx, eax
push esi
push edi
call fcn.00430820
movzx eax, al
xor ebx, ebx
xor esi, esi
jmp dword [eax*4 + 0x45240c]
mov dword [esp + 0xc], 0xab94aa8f
mov dword [esp + 0x10], 0x86b49ca7
mov dword [esp + 0x14], 0x8b879b73
mov dword [esp + 0x18], 0x9c7980be
mov dword [esp + 0x1c], 0x828f8cbc
mov dword [esp + 0x20], 0xb4b56c7f
mov dword [esp + 0x24], 0x83848483
mov dword [esp + 0x28], 0x1583
mov byte [esp + 0x2c], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x20
ja 0x42da86
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431a60
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x21
jb 0x42da60
lea eax, [esp + 0xc]
mov ecx, dword [esp + 0x84]
push eax
call fcn.00430a10
xor ecx, ecx
test eax, eax
setne cl
xor esi, esi
jmp dword [ecx*4 + 0x452414]
mov edi, dword [esp + 0x84]
jmp dword [0x452424]
jmp dword [0x45242c]
mov ecx, edi
call fcn.00430b70
push edi
call fcn.0040c8c0
add esp, 4
nop
nop
nop
nop
nop
nop
mov ecx, edi
call fcn.00430b70
push edi
call fcn.0040c8c0
add esp, 4
jmp dword [0x452438]
jmp dword [0x45243c]
push dword [esp + 8]
call fcn.0040c8c0
add esp, 4
mov edi, ebp
mov ebp, esi
mov eax, dword [esp + 0x70]
mov dword [esp + 0x6c], eax
mov dword [esp + 0xc], 0xe0e7e6e5
mov dword [esp + 0x10], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
ja 0x42db56
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431cc0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x42db30
mov eax, dword [0x456088]
test eax, eax
je 0x42db9d
mov ecx, dword [esp + 0xc]
xor edx, edx
mov esi, dword [0x45608c]
nop
nop
nop
nop
nop
cmp dword [esi + edx*8], 0x625b6034
je 0x42db80
inc edx
cmp eax, edx
jne 0x42db70
jmp 0x42db9d
mov eax, dword [esi + edx*8 + 4]
cmp eax, ecx
je 0x42db9d
push dword [esp + 0x6c]
push 1
push dword [0x456090]
push eax
call fcn.00446c10
add esp, 0x10
mov eax, dword [case.0x42dc15.13]
mov esi, ebp
mov ebp, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x452454]
jmp dword [0x45245c]
add eax, 8
xor ebx, ebx
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
setne al
xor esi, esi
xor edi, edi
xor edx, edx
mov dword [esp + 0x88], ebp
jmp dword [eax*4 + 0x45241c]
xor ecx, ecx
mov esi, dword [esp + 0x60]
mov eax, dword [esp + 0x68]
mov dword [esi + eax + 4], ecx
mov ebx, dword [esp + 0x64]
add ebx, 8
mov ecx, dword [esp + 0x5c]
add ecx, 4
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
mov edi, esi
mov ebp, dword [esp + 0x88]
mov edx, dword [esp + 0x80]
jmp dword [eax*4 + 0x45241c]
mov dword [esp + 0x5c], ecx
mov eax, dword [ecx]
mov dword [esp + 0x6c], eax
mov ecx, ebx
sub ecx, edi
cmp ebx, edx
mov dword [esp + 0x68], ecx
je 0x42dc3d
mov dword [esp + 0x64], ebx
mov esi, edi
jmp 0x42dcba
mov eax, ecx
sar eax, 3
inc eax
mov dword [esp + 0x80], edx
mov ecx, edx
sub ecx, edi
sar ecx, 3
mov ebx, ecx
shr ebx, 1
add ebx, ecx
cmp ebx, eax
ja 0x42dc5d
mov ebx, eax
lea eax, [ebx*8]
push eax
call fcn.0040c8b0
add esp, 4
mov esi, eax
test edi, edi
je 0x42dcab
mov edx, dword [esp + 0x80]
cmp edi, edx
je 0x42dca2
xor eax, eax
mov ecx, dword [edi + eax]
mov dword [esi + eax], ecx
mov ecx, dword [edi + eax + 4]
mov dword [esi + eax + 4], ecx
mov dword [edi + eax], 0
lea ecx, [edi + eax]
add ecx, 8
add eax, 8
cmp ecx, edx
jne 0x42dc80
push edi
call fcn.0040c8c0
add esp, 4
lea edx, [esi + ebx*8]
mov eax, esi
mov ecx, dword [esp + 0x68]
add eax, ecx
mov dword [esp + 0x64], eax
mov dword [esp + 0x80], edx
mov dword [esi + ecx], 0
mov dword [esp + 0x60], esi
mov dword [esi + ecx + 4], 0
xor ebx, ebx
mov ebp, dword [esp + 0x6c]
mov eax, ebp
nop
nop
nop
nop
dec ebx
cmp byte [eax], 0
lea eax, [eax + 1]
jne 0x42dce0
mov esi, ebx
neg esi
push esi
call fcn.0040c8b0
add esp, 4
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x68]
mov dword [ecx + edx], eax
mov ecx, esi
shr ecx, 2
mov edx, ebp
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edx, esi
and edx, 0xfffffffc
add eax, edx
add edx, ebp
mov ecx, esi
shr ecx, 1
and ecx, 1
mov ebp, edx
mov edi, eax
xchg esi, ebp
rep movsw word es:[edi], word [esi]
xchg esi, ebp
test bl, 1
je 0x42dd3a
and esi, 2
movzx ecx, byte [edx + esi]
mov byte [eax + esi], cl
cmp ebx, 0xffffffff
je 0x42dbe0
mov ecx, 0xffffffff
mov eax, 1
nop
nop
nop
mov edx, dword [esp + 0x6c]
movzx edi, byte [edx + eax - 1]
xor edi, ecx
mov ecx, edi
shr ecx, 1
mov edx, edi
and edx, 1
neg edx
and edx, 0xedb88320
xor edx, ecx
mov esi, edx
shr esi, 1
mov ecx, edi
shl ecx, 0x1e
sar ecx, 0x1f
and ecx, 0xedb88320
xor ecx, esi
mov ebp, edi
shl ebp, 0x1d
sar ebp, 0x1f
and ebp, 0x76dc419
mov esi, edi
shl esi, 0x1c
sar esi, 0x1f
and esi, 0xedb8832
xor esi, ebp
mov ebp, edi
shl ebp, 0x1b
sar ebp, 0x1f
and ebp, 0x1db71064
shl edi, 0x1a
sar edi, 0x1f
and edi, 0x3b6e20c8
xor edi, ebp
xor edi, esi
mov esi, ecx
shr esi, 6
xor edi, esi
shl edx, 0x1a
sar edx, 0x1f
and edx, 0x76dc4190
xor edx, edi
shl ecx, 0x1a
sar ecx, 0x1f
and ecx, 0xedb88320
xor ecx, edx
inc eax
mov edx, ebx
add edx, eax
jne 0x42dd50
not ecx
jmp 0x42dbe2
add esp, 0xa0
pop esi
pop edi
pop ebx
pop ebp
ret
push eax
call fcn.0040c8c0
add esp, 4
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0xc], 0xe0e7e6e5
mov dword [esp + 0x10], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
mov ebx, dword [esp + 0x64]
ja 0x42de66
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431cc0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x42de40
mov eax, dword [0x456088]
test eax, eax
je 0x42de98
mov ecx, dword [esp + 0xc]
xor edx, edx
mov edi, dword [0x45608c]
nop
nop
nop
nop
nop
cmp dword [edi + edx*8], 0x625b6034
je 0x42de90
inc edx
cmp eax, edx
jne 0x42de80
jmp 0x42de98
mov eax, dword [edi + edx*8 + 4]
cmp eax, ecx
jne 0x42debc
mov esi, dword [esp + 0x60]
mov edx, dword [esp + 8]
jmp dword [0x45257c]
mov eax, edx
and al, 1
movzx ecx, al
mov eax, edx
jmp dword [ecx*4 + 0x452584]
jmp dword [0x45258c]
push esi
push 1
push dword [0x456090]
push eax
call fcn.00446c10
add esp, 0x10
mov esi, dword [esp + 0x60]
mov edx, dword [esp + 8]
jmp dword [0x45257c]
jmp dword [0x452498]
lea eax, [esp + 0x90]
push 0
push eax
push dword [esp + 0x80]
call fcn.0044a3c0
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [esp + 8], 0
mov esi, ebp
jmp dword [eax*4 + 0x45248c]
mov ecx, dword [esp + 0x88]
add ecx, 4
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x4524bc]
mov edx, dword [ecx]
cmp dword [ecx + 0x18], 3
mov dword [esp + 0x88], ecx
jne case.default.0x42df4c
mov edi, dword [ecx + 0x10]
test edx, edx
setne al
test edi, edi
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x4524c4]
xor edi, edi
test edx, edx
setne al
test edi, 0
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x4524c4]
mov dword [esp + 0x68], edx
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
inc eax
cmp byte [ecx], 0
jne case.default.0x42dfb5
mov dword [esp + 0x5c], esi
sub ecx, edi
inc ecx
shr ecx, 1
mov dword [esp + 0x9c], ecx
lea eax, [ecx + 1]
push eax
call fcn.0040c8b0
add esp, 4
movsx ecx, byte [edi]
xor edx, edx
test ecx, ecx
setne dl
mov dword [esp + 0x98], eax
jmp dword [edx*4 + 0x4524cc]
inc edi
mov byte [eax], dl
inc eax
movsx ecx, byte [edi]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x4524cc]
lea edx, [ecx - 0x30]
cmp edx, 0xa
jb 0x42dfe2
mov edx, 0xffffffff
or ecx, 0x20
lea esi, [ecx - 0x61]
cmp esi, 6
jae case.default.0x42dffd
add ecx, 0xffffffa9
mov edx, ecx
movsx ecx, byte [edi + 1]
xor ebx, ebx
test ecx, ecx
setne bl
jmp dword [ebx*4 + 0x4524e4]
jmp dword [0x4524f4]
mov ebx, ebp
lea esi, [ecx - 0x30]
cmp esi, 0xa
jb 0x42e025
mov esi, 0xffffffff
or ecx, 0x20
lea ebp, [ecx - 0x61]
cmp ebp, 6
jae case.default.0x42e04c
add ecx, 0xffffffa9
mov esi, ecx
mov ebp, ebx
shl edx, 4
or edx, esi
add edi, 2
mov byte [eax], dl
inc eax
movsx ecx, byte [edi]
xor edx, edx
test ecx, ecx
setne dl
jmp dword [edx*4 + 0x4524cc]
mov dword [esp + 0x84], ebp
mov byte [eax], 0
push 0
push 0x10
push 0
push dword [esp + 0x74]
call fcn.00430c10
add esp, 0x10
mov dword [esp + 0x68], eax
mov dword [esp + 0x80], edx
mov ecx, dword [case.0x42e9e4.24]
xor edx, edx
mov esi, dword [case.0x42e9e4.31]
xor ebx, ebx
mov ebp, dword [esp + 0x60]
cmp ebp, dword [esp + 0x64]
setne bl
jmp dword [ebx*4 + 0x4524fc]
mov edi, dword [ebp + 4]
mov ebx, edi
shr ebx, 0x1c
shl edi, 4
or edi, 1
xor ebx, dword [esp + 0x80]
xor edi, dword [esp + 0x68]
xor eax, eax
or edi, ebx
sete al
jmp dword [eax*4 + 0x452504]
mov ebx, 1
jmp dword [ebx*4 + 0x45251c]
jmp ecx
mov edx, dword [ebp]
xor ebx, ebx
jmp dword [ebx*4 + 0x45251c]
jmp esi
add ebp, 8
xor ebx, ebx
cmp ebp, dword [esp + 0x64]
setne bl
jmp dword [ebx*4 + 0x4524fc]
mov eax, dword [case.0x42e9e4.35]
mov ebp, dword [esp + 0x84]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
test edx, edx
setne al
lea esi, [esp + 0x70]
mov ecx, dword [esp + 0x9c]
jmp dword [eax*4 + 0x452544]
mov esi, dword [esp + 0x5c]
jmp dword [0x452564]
mov ebx, edx
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0x98]
mov dword [esp + 0x10], eax
mov eax, 0xffffffff
lea edi, [esp + 0xc]
nop
cmp byte [ebx + eax + 1], 0
lea eax, [eax + 1]
jne 0x42e160
mov dword [esp], eax
mov dword [esp + 4], ebx
jmp dword [0x45254c]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
push 0x6c625980
push dword [0x456094]
call fcn.00449620
add esp, 8
mov ecx, esp
push esi
push 1
push 0
push 0
push ecx
push 0
push edi
call eax
nop
nop
nop
nop
nop
nop
nop
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
push 0x6c625980
push dword [0x456094]
call fcn.00449620
add esp, 8
mov ecx, esp
push esi
push 1
push 0
push 0
push ecx
push 0
push edi
call eax
jmp dword [0x452558]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x45255c]
mov esi, dword [esp + 0x5c]
jmp dword [0x452564]
movzx eax, byte [ebx]
test al, al
mov ecx, dword [esp + 0x5c]
je 0x42e21b
inc ebx
nop
nop
nop
nop
mov byte [ecx], al
inc ecx
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x42e210
mov word [ecx], 0x203a
mov eax, ecx
add eax, 2
mov esi, dword [esp + 0x70]
test esi, esi
je 0x42e25b
mov ecx, dword [esp + 0x74]
mov edx, esi
and edx, 3
je 0x42e25f
xor edi, edi
nop
nop
nop
nop
nop
nop
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + edi], bl
inc edi
cmp edx, edi
jne 0x42e240
add eax, edi
mov edx, esi
sub edx, edi
mov edi, eax
jmp 0x42e261
mov esi, eax
jmp 0x42e2a9
mov edx, esi
cmp esi, 4
mov esi, edi
jb 0x42e2a9
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 1], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 2], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
lea esi, [eax + 4]
mov byte [eax + 3], bl
mov eax, esi
add edx, 0xfffffffc
jne 0x42e270
mov byte [esi], 0xa
inc esi
push 0xe050b307
push dword [0x45607c]
call fcn.00449620
add esp, 8
push dword [esp + 0x74]
call eax
mov al, 1
mov dword [esp + 8], eax
jmp dword [0x452564]
push dword [esp + 0x98]
call fcn.0040c8c0
add esp, 4
mov ecx, dword [esp + 0x88]
add ecx, 4
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x4524bc]
push dword [esp + 0x6c]
mov edi, edx
call fcn.0040c8c0
add esp, 4
mov edx, edi
mov eax, edx
and al, 1
movzx ecx, al
mov eax, edi
jmp dword [ecx*4 + 0x452584]
mov edi, esi
mov eax, dword [esp + 0x5c]
mov byte [eax], 0
mov esi, ebp
not esi
and esi, eax
add esi, esi
mov dword [esp + 0xc], 0xbdbebf8f
mov dword [esp + 0x10], 0xa1b1b6bb
mov dword [esp + 0x14], 0xacb8a6bf
mov dword [esp + 0x18], 0xbaae8e69
mov dword [esp + 0x1c], 0xb56fb0bf
mov dword [esp + 0x20], 0x8b858e91
mov dword [esp + 0x24], 0x91924991
mov word [esp + 0x28], 0x6b9c
mov dword [esp + 0x2a], 0
mov byte [esp + 0x2e], 0
xor eax, ebp
sub esi, eax
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x22
ja 0x42e3b6
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431c50
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x23
jb 0x42e390
mov ecx, dword [esp + 0xb4]
push esi
push ebp
lea eax, [esp + 0x14]
push eax
call fcn.0040d660
mov esi, edi
jmp dword [0x45258c]
push ebp
mov edi, eax
call fcn.0040c8c0
mov eax, edi
add esp, 4
and al, 1
test esi, esi
jne 0x42e419
jmp 0x42e453
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x452484]
xor edx, edx
mov dword [esp + 0x5c], ebp
mov ebx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
jmp dword [0x45257c]
mov eax, dword [esp + 0x8c]
jmp dword [0x452574]
xor eax, eax
test esi, esi
je 0x42e453
cmp esi, ebx
je 0x42e453
mov ebp, eax
mov edi, esi
jmp 0x42e437
add esi, 8
cmp esi, ebx
je 0x42e448
mov eax, dword [esi]
test eax, eax
je 0x42e430
push eax
call fcn.0040c8c0
add esp, 4
jmp 0x42e430
push edi
call fcn.0040c8c0
add esp, 4
mov eax, ebp
mov ecx, dword [case.0x42dc15.96]
nop
nop
nop
nop
nop
nop
nop
jmp ecx
mov dword [esp + 0x60], esi
mov dword [esp + 0x64], ebx
jmp dword [0x452478]
xor eax, eax
cmp esi, ebx
sete al
jmp dword [eax*4 + 0x45246c]
jmp dword [0x45256c]
mov edi, dword [esp + 0x94]
mov ecx, edi
call fcn.00430b70
push edi
call fcn.0040c8c0
add esp, 4
mov eax, dword [esp + 0x8c]
jmp dword [0x452574]
mov esi, dword [0x456084]
mov dword [esp + 0xc], 0xfd2092d
mov dword [esp + 0x10], 0x3e50dff
mov dword [esp + 0x14], 0x7fa01e1
mov dword [esp + 0x18], 0x1bea05c5
mov dword [esp + 0x1c], 0x1fda19e8
mov dword [esp + 0x20], 0x13e61dfd
mov dword [esp + 0x24], 0x173311f1
mov dword [esp + 0x28], 0x2bfd15f8
mov dword [esp + 0x2c], 0x2fcb29dc
mov dword [esp + 0x30], 0x23df2dcd
mov dword [esp + 0x34], 0x27da21cc
mov dword [esp + 0x38], 0x3bdd25d7
mov dword [esp + 0x3c], 0x3fc239d9
mov dword [esp + 0x40], 0x33b83d0e
mov dword [esp + 0x44], 0x37cc31d4
mov dword [esp + 0x48], 0x3534
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x3f
ja 0x42e566
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431ad0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x40
jb 0x42e540
lea ebx, [esp + 0x7c]
lea eax, [esp + 0xc]
push ebx
push 0
push 0
push 0x1e
push eax
push 0
call esi
mov ebp, dword [esp + 0x7c]
lea eax, [ebp*2]
test ebp, ebp
jns 0x42e58e
mov eax, 0xffffffff
push eax
call fcn.0040c8b0
add esp, 4
mov esi, eax
mov edi, dword [0x456084]
mov dword [esp + 0xc], 0x8fd289ed
mov dword [esp + 0x10], 0x83258d3f
mov dword [esp + 0x14], 0x873a8121
mov dword [esp + 0x18], 0x9b2a85c5
mov dword [esp + 0x1c], 0x9fda9928
mov dword [esp + 0x20], 0x93269d3d
mov dword [esp + 0x24], 0x97f39131
mov dword [esp + 0x28], 0xebbd9538
mov dword [esp + 0x2c], 0xef4be95c
mov dword [esp + 0x30], 0xe35fed4d
mov dword [esp + 0x34], 0xe75ae14c
mov dword [esp + 0x38], 0xfb5de557
mov dword [esp + 0x3c], 0xff42f959
mov dword [esp + 0x40], 0xf378fd8e
mov dword [esp + 0x44], 0xf74cf154
mov word [esp + 0x48], 0xf5f4
mov dword [esp + 0x4a], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x41
ja 0x42e666
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431b70
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x42
jb 0x42e640
push ebx
push ebp
push esi
push 0x1e
lea eax, [esp + 0x1c]
push eax
push 0
call edi
lea eax, [esp + 0x78]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.0044a040
add esp, 0x14
mov eax, dword [esp + 0x64]
sub eax, dword [esp + 0x60]
sar eax, 3
mov ecx, eax
and ecx, 0xfffffbde
mov edx, eax
and edx, 0x421
or eax, 0x421
imul eax, edx
xor edx, 0x421
imul edx, ecx
add eax, edx
push eax
call fcn.0040c8b0
add esp, 4
mov ebp, eax
mov esi, dword [0x456084]
mov dword [esp + 0xc], 0xfd2092d
mov dword [esp + 0x10], 0x3e50dff
mov dword [esp + 0x14], 0x7fa01e1
mov dword [esp + 0x18], 0x1bea05c5
mov dword [esp + 0x1c], 0x1fda19e8
mov dword [esp + 0x20], 0x13e61dfd
mov dword [esp + 0x24], 0x173311f1
mov dword [esp + 0x28], 0x2bfd15f8
mov dword [esp + 0x2c], 0x2fcb29dc
mov dword [esp + 0x30], 0x23df2dcd
mov dword [esp + 0x34], 0x27da21cc
mov dword [esp + 0x38], 0x3bdd25d7
mov dword [esp + 0x3c], 0x3fc239d9
mov dword [esp + 0x40], 0x33b83d0e
mov dword [esp + 0x44], 0x37cc31d4
mov dword [esp + 0x48], 0x3534
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x3f
ja 0x42e786
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431ad0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x40
jb 0x42e760
lea edi, [esp + 0x7c]
lea eax, [esp + 0xc]
push edi
push 0
push 0
push 0x1e
push eax
push 0
call esi
mov esi, dword [esp + 0x7c]
lea eax, [esi + esi]
test esi, esi
jns 0x42e7aa
mov eax, 0xffffffff
push eax
call fcn.0040c8b0
add esp, 4
mov dword [esp + 0x6c], eax
mov ebx, dword [0x456084]
mov dword [esp + 0xc], 0x8fd289ed
mov dword [esp + 0x10], 0x83258d3f
mov dword [esp + 0x14], 0x873a8121
mov dword [esp + 0x18], 0x9b2a85c5
mov dword [esp + 0x1c], 0x9fda9928
mov dword [esp + 0x20], 0x93269d3d
mov dword [esp + 0x24], 0x97f39131
mov dword [esp + 0x28], 0xebbd9538
mov dword [esp + 0x2c], 0xef4be95c
mov dword [esp + 0x30], 0xe35fed4d
mov dword [esp + 0x34], 0xe75ae14c
mov dword [esp + 0x38], 0xfb5de557
mov dword [esp + 0x3c], 0xff42f959
mov dword [esp + 0x40], 0xf378fd8e
mov dword [esp + 0x44], 0xf74cf154
mov word [esp + 0x48], 0xf5f4
mov dword [esp + 0x4a], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x41
ja 0x42e886
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431b70
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x42
jb 0x42e860
push edi
push esi
mov esi, dword [esp + 0x74]
push esi
push 0x1e
lea edi, [esp + 0x1c]
push edi
push 0
call ebx
lea eax, [esp + 0x78]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.0044a040
add esp, 0x14
jmp dword [0x45247c]
mov dword [esp + 0x8c], ebx
not eax
shr eax, 0x1f
mov dword [esp + 8], 0
mov esi, ebp
jmp dword [eax*4 + 0x4524a4]
mov esi, dword [esp + 0x90]
mov ebx, dword [esp + 0x8c]
mov byte [ebx + esi], 0
push 0x20
call fcn.0040c8b0
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [esp + 0x94], eax
mov ecx, eax
push esi
push ebx
call fcn.00430820
movzx eax, al
mov dword [esp + 8], 0
mov esi, ebp
jmp dword [eax*4 + 0x4524ac]
mov dword [esp + 0xc], 0xedf8f6c9
mov dword [esp + 0x10], 0xc2f0c0e9
mov dword [esp + 0x14], 0xcdfdf18d
mov dword [esp + 0x18], 0xf88bc4d6
mov dword [esp + 0x1c], 0xc6f5c8d8
mov dword [esp + 0x20], 0xdbc3ee81
mov dword [esp + 0x24], 0xc5d3d0da
mov dword [esp + 0x28], 0xddd7e8f5
mov dword [esp + 0x2c], 0x47db
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x23
ja 0x42e9c6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0xc]
push dword [esp]
push eax
call fcn.00431bf0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x24
jb 0x42e9a0
mov ecx, dword [esp + 0x94]
push edi
call fcn.00430a10
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp + 8], 0
mov esi, ebp
jmp dword [ecx*4 + 0x4524b4]
add eax, 8
mov dword [esp + 8], 0
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
setne al
mov esi, ebp
jmp dword [eax*4 + 0x4524bc]
push ebp
call fcn.0040c8c0
add esp, 4
push ebp
call fcn.0040c8c0
add esp, 4
jmp dword [0x452464]
mov esi, dword [esp + 0x90]
lea eax, [esi + 1]
push eax
call fcn.0040c8b0
add esp, 4
push 0
push esi
push eax
push dword [esp + 0x84]
call fcn.0044a4a0
add esp, 0x10
mov esi, dword [esp + 0x90]
lea eax, [esi + 1]
push eax
call fcn.0040c8b0
add esp, 4
mov ebx, eax
push 0
push esi
push eax
push dword [esp + 0x84]
call fcn.0044a4a0
add esp, 0x10
jmp dword [0x4524a0]
jmp dword [0x4525ac]
push dword [ebp - 0x48]
call fcn.0040c8c0
add esp, 4
mov eax, dword [ebp - 0x90]
and al, 1
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0xdc]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x4525a4]
mov dword [ebp - 0xdc], ecx
mov ecx, dword [edi + ecx]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x42eef0
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x98], eax
mov edx, eax
sar edx, 1
mov eax, dword [ebp - 0x60]
lea ecx, [edx + eax]
mov dword [ebp - 0x4c], edx
add edx, eax
add edx, 0xd
lea eax, [ecx*2 + 0x1a]
test edx, edx
jns 0x42ef26
mov eax, 0xffffffff
push eax
call fcn.0040c8b0
add esp, 4
mov esi, eax
mov eax, dword [ebp - 0x48]
movzx eax, word [eax]
mov dword [ebp - 0x38], esi
test ax, ax
je 0x42ef61
mov ecx, dword [ebp - 0x9c]
mov esi, dword [ebp - 0x38]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42ef50
mov word [esi], 0x5c
mov edx, dword [ebp - 0xa4]
mov dword [edx], 0x81d28720
mov dword [edx + 4], 0x8d2f8331
mov dword [edx + 8], 0x893a8f2f
mov dword [edx + 0xc], 0x95d78be8
mov dword [edx + 0x10], 0x91359728
mov dword [edx + 0x14], 0x9d3d932c
mov word [edx + 0x18], 0x9f9c
mov eax, dword [ebp - 0xd8]
mov byte [eax + 4], 0
mov dword [eax], 0
add esi, 2
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 0x1e
ja 0x42efea
nop
nop
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [edx + eax]
push dword [ebp - 0x2c]
push eax
call fcn.00432210
mov edx, dword [ebp - 0xa4]
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [edx + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 0x1f
jb 0x42efc0
mov ecx, dword [ebp - 0x34]
movzx eax, word [ecx]
test ax, ax
je 0x42f011
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42f000
mov word [esi], 0
movzx eax, word [edx]
test ax, ax
je 0x42f050
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ebp - 0x44]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42f030
jmp 0x42f053
mov edx, dword [ebp - 0x44]
mov word [esi], 0
push 0x60
push 3
push 0x120089
push edx
push dword [ebp - 0x38]
call fcn.0044a040
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4525b4]
xor eax, eax
jmp dword [0x452654]
push dword [ebp - 0x38]
mov esi, eax
call fcn.0040c8c0
add esp, 4
mov eax, esi
movzx eax, al
jmp dword [eax*4 + 0x45265c]
mov eax, dword [ebp - 0x6c]
push 0
push eax
mov eax, dword [ebp - 0x44]
push dword [eax]
call fcn.0044a3c0
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [ebp - 0x30], 0
jmp dword [eax*4 + 0x4525cc]
jmp dword [0x4525d8]
mov eax, dword [ebp - 0x6c]
mov esi, dword [eax]
lea eax, [esi + 1]
push eax
call fcn.0040c8b0
add esp, 4
push 0
push esi
push eax
mov eax, dword [ebp - 0x44]
push dword [eax]
call fcn.0044a4a0
add esp, 0x10
nop
nop
mov eax, dword [ebp - 0x6c]
mov esi, dword [eax]
lea eax, [esi + 1]
push eax
call fcn.0040c8b0
add esp, 4
mov edi, eax
push 0
push esi
mov esi, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x44]
push dword [eax]
call fcn.0044a4a0
add esp, 0x10
jmp dword [0x4525dc]
mov dword [ebp - 0xb0], edi
not eax
shr eax, 0x1f
mov dword [ebp - 0x30], 0
jmp dword [eax*4 + 0x4525e4]
mov edi, dword [ebp - 0xb0]
jmp dword [0x4525ec]
mov eax, dword [esi]
mov byte [edi + eax], 0
push edi
call fcn.00403b90
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi]
mov byte [edi + eax], 0
push edi
call fcn.00403b90
add esp, 4
jmp dword [0x4525f8]
xor ecx, ecx
test eax, eax
setne cl
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0xac]
jmp dword [ecx*4 + 0x4525fc]
mov dword [ebp - 0x64], eax
push eax
call fcn.00404660
add esp, 4
mov edi, eax
mov dword [esi], 0x605d726f
mov dword [esi + 4], 0x73767c76
mov dword [esi + 8], 0x68646c26
mov dword [esi + 0xc], 0x7b7e747e
mov dword [esi + 0x10], 0x784d7575
mov word [esi + 0x14], 0x6c71
mov byte [esi + 0x16], 0x16
mov eax, dword [ebp - 0xc8]
mov dword [eax], 0
mov byte [eax + 4], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 0x1b
ja 0x42f214
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [esi + eax]
push dword [ebp - 0x2c]
push eax
call fcn.004322a0
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [esi + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 0x1c
jb 0x42f1f0
push esi
push edi
call fcn.00404a20
add esp, 8
mov edx, 0xffffffff
mov ecx, 0xfffffffd
nop
nop
nop
nop
nop
nop
nop
nop
add ecx, 3
cmp byte [eax + edx + 1], 0
lea edx, [edx + 1]
jne 0x42f230
shr ecx, 2
mov esi, edx
mov dword [ebp - 0x5c], edx
movzx edx, byte [eax + edx - 1]
cmp edx, 0x3d
je 0x42f254
cmp edx, 0x2e
jne 0x42f25b
mov edx, ecx
not edx
lea ecx, [edx + ecx*2]
mov edx, dword [ebp - 0x5c]
movzx edx, byte [eax + edx - 2]
cmp edx, 0x3d
mov dword [ebp - 0x94], eax
je 0x42f273
cmp edx, 0x2e
jne 0x42f274
dec ecx
mov eax, ecx
and eax, 1
mov dword [ebp - 0xd0], ecx
xor ecx, 1
lea eax, [ecx + eax*2]
push eax
call fcn.0040c8b0
add esp, 4
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x5c], 0
je 0x42f397
xor edx, edx
mov esi, 2
jmp 0x42f2c0
mov edx, dword [ebp - 0x40]
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [esi + 4]
add esi, 2
cmp esi, ecx
mov esi, eax
jae 0x42f397
mov dword [ebp - 0x30], edx
mov edi, dword [ebp - 0x94]
movzx eax, byte [edi + esi - 2]
push eax
call fcn.00421a90
add esp, 4
mov byte [ebp - 0x40], al
movzx eax, byte [edi + esi - 1]
push eax
call fcn.00421a90
mov ecx, dword [ebp - 0x5c]
add esp, 4
movzx edx, byte [ebp - 0x40]
shl dl, 2
mov ah, al
shr ah, 4
and ah, 3
or ah, dl
mov edx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x30]
mov byte [edx + edi], ah
lea edx, [edi + 1]
cmp esi, ecx
jae 0x42f2b0
mov byte [ebp - 0x40], al
mov eax, dword [ebp - 0x94]
movzx eax, byte [eax + esi]
push eax
mov edi, edx
call fcn.00421a90
mov edx, edi
mov ecx, dword [ebp - 0x5c]
add esp, 4
cmp al, 0x40
je 0x42f2b0
movzx edx, byte [ebp - 0x40]
shl dl, 4
mov byte [ebp - 0x39], al
shr al, 2
and al, 0xf
or al, dl
mov edi, dword [ebp - 0x30]
lea edx, [edi + 2]
mov dword [ebp - 0x40], edx
mov edx, dword [ebp - 0x58]
mov byte [edx + edi + 1], al
lea eax, [esi + 1]
cmp eax, ecx
jae 0x42f2a4
mov eax, dword [ebp - 0x94]
movzx eax, byte [eax + esi + 1]
push eax
call fcn.00421a90
mov ecx, dword [ebp - 0x5c]
add esp, 4
cmp al, 0x40
mov edx, dword [ebp - 0x40]
mov ah, byte [ebp - 0x39]
je 0x42f2b0
shl ah, 6
add al, ah
mov edx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x30]
mov byte [edx + edi + 2], al
add edi, 3
mov edx, edi
jmp 0x42f2b0
mov eax, dword [ebp - 0xd0]
add eax, 0xfffffffb
mov esi, dword [ebp - 0xcc]
mov dword [esi], eax
mov eax, dword [ebp - 0x58]
add eax, 5
mov dword [esi + 4], eax
mov edi, dword [ebp - 0x8c]
mov dword [edi], 0
mov dword [edi + 4], 0
push 0x6c625980
push dword [0x456094]
call fcn.00449620
add esp, 8
push edi
push 0
push 0
push 0
push 0
push 0
push esi
call eax
xor ecx, ecx
test eax, eax
setne cl
mov dword [ebp - 0x30], 0
jmp dword [ecx*4 + 0x452604]
mov eax, dword [ebp - 0x98]
add eax, 0x10
cmp dword [ebp - 0x4c], 0xfffffff8
mov esi, dword [ebp - 0xa8]
jge 0x42f414
mov eax, 0xffffffff
push eax
call fcn.0040c8b0
add esp, 4
mov edi, eax
mov dword [esi], 0x19b61b6d
mov dword [esi + 4], 0x651467a8
mov dword [esi + 8], 0x61da63d8
mov dword [esi + 0xc], 0x6d6e6fdc
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 0xf
ja 0x42f474
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [esi + eax]
push dword [ebp - 0x2c]
push eax
call fcn.00432330
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [esi + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 0x10
jb 0x42f450
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
mov eax, edi
test cx, cx
je 0x42f4a1
mov eax, dword [ebp - 0x34]
lea edx, [eax + 2]
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42f490
mov word [eax], 0
movzx ecx, word [esi]
test cx, cx
je 0x42f4d1
mov edx, dword [ebp - 0xc4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42f4c0
mov word [eax], 0
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x8c]
push dword [eax]
push dword [eax + 4]
push edi
call fcn.0040d4b0
mov dword [ebp - 0x30], eax
jmp dword [0x45260c]
push edi
call fcn.0040c8c0
add esp, 4
jmp dword [0x452618]
jmp dword [0x452618]
push eax
call fcn.0040c8c0
add esp, 4
mov eax, dword [ebp - 0x64]
jmp dword [0x45263c]
mov edi, eax
mov eax, dword [ebp - 0x8c]
mov esi, dword [eax + 4]
jmp dword [0x452624]
push esi
call edi
nop
nop
push esi
call edi
jmp dword [0x45262c]
mov eax, dword [ebp - 0x58]
jmp dword [0x452634]
mov eax, dword [ebp - 0x64]
jmp dword [0x45263c]
push edi
call fcn.0040c8c0
add esp, 4
mov eax, dword [case.0x42dc15.151]
nop
nop
jmp eax
mov eax, dword [ebp - 0x60]
mov edi, dword [ebp - 0x4c]
lea ecx, [edi + eax]
lea edx, [edi + eax]
add edx, 0x17
lea eax, [ecx*2 + 0x2e]
test edx, edx
jns 0x42f58f
mov eax, 0xffffffff
push eax
call fcn.0040c8b0
add esp, 4
mov edx, eax
mov eax, dword [ebp - 0x48]
movzx eax, word [eax]
mov esi, edx
test ax, ax
je 0x42f5c1
mov ecx, dword [ebp - 0x9c]
mov esi, edx
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42f5b0
mov dword [ebp - 0x38], edx
mov word [esi], 0x5c
mov dword [ebx], 0x95e0b68
mov dword [ebx + 4], 0x57b0779
mov dword [ebx + 8], 0x176037b
mov dword [ebx + 0xc], 0x1d731f20
mov dword [ebx + 0x10], 0x196b1b90
mov dword [ebx + 0x14], 0x15691796
mov dword [ebx + 0x18], 0x1169136d
mov dword [ebx + 0x1c], 0x2d5a2f74
mov dword [ebx + 0x20], 0x29a02b57
mov dword [ebx + 0x24], 0x25522753
mov dword [ebx + 0x28], 0x215c2358
mov word [ebx + 0x2c], 0x3f20
mov eax, dword [ebp - 0xc0]
mov byte [eax + 2], 0
mov word [eax], 0
add esi, 2
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 0x30
ja 0x42f664
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [ebx + eax]
push dword [ebp - 0x2c]
push eax
call fcn.004323b0
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [ebx + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 0x31
jb 0x42f640
mov ecx, dword [ebp - 0x34]
movzx eax, word [ecx]
test ax, ax
je 0x42f691
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42f680
mov word [esi], 0
movzx eax, word [ebx]
test ax, ax
je 0x42f6c1
mov ecx, dword [ebp - 0xb8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42f6b0
mov word [esi], 0
mov eax, dword [ebp - 0x98]
add eax, 0x12
cmp edi, 0xfffffff7
jge 0x42f6d9
mov eax, 0xffffffff
push eax
call fcn.0040c8b0
add esp, 4
mov edi, eax
mov edx, dword [ebp - 0x50]
mov dword [edx], 0xb722895b
mov dword [edx + 4], 0xb328b559
mov dword [edx + 8], 0xbf2ab15d
mov dword [edx + 0xc], 0xbb54bd50
mov word [edx + 0x10], 0xb9b8
mov eax, dword [ebp - 0xbc]
mov word [eax], 0
mov byte [eax + 2], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 0x14
mov esi, dword [ebp - 0xa0]
ja 0x42f757
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [edx + eax]
push dword [ebp - 0x2c]
push eax
call fcn.00432430
mov edx, dword [ebp - 0x50]
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [edx + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 0x15
jb 0x42f730
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
mov eax, edi
test cx, cx
je 0x42f781
mov eax, dword [ebp - 0x34]
lea edx, [eax + 2]
mov eax, edi
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42f770
mov word [eax], 0
mov ecx, dword [ebp - 0x50]
movzx ecx, word [ecx]
test cx, cx
je 0x42f7b1
mov edx, dword [ebp - 0xb4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42f7a0
mov word [eax], 0
mov dword [esi], 0x8f8e89f6
mov byte [esi + 4], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 4
ja 0x42f7f4
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [esi + eax]
push dword [ebp - 0x2c]
push eax
call fcn.004324b0
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [esi + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 5
jb 0x42f7d0
push 0
push 0
push 0
push 0xc00000
push esi
push dword [ebp - 0x38]
push edi
push dword [ebp + 8]
call fcn.004259d0
add esp, 0x20
jmp case.0x42dc15.146
push 0
push 0
push 0
push 0xc00000
push esi
mov esi, dword [ebp - 0x38]
push esi
push edi
push dword [ebp + 8]
call fcn.004259d0
add esp, 0x20
jmp dword [0x45266c]
mov eax, dword [ebp - 0x60]
mov edx, dword [ebp - 0x4c]
lea ecx, [edx + eax]
add ecx, 0x17
test ecx, ecx
jns 0x42f860
mov eax, 0xffffffff
jmp 0x42f869
add eax, edx
lea eax, [eax*2 + 0x2e]
push eax
call fcn.0040c8b0
add esp, 4
mov edx, eax
mov eax, dword [ebp - 0x48]
movzx eax, word [eax]
mov edi, edx
test ax, ax
je 0x42f8a1
mov ecx, dword [ebp - 0x9c]
mov edi, edx
nop
nop
nop
nop
nop
nop
nop
mov word [edi], ax
add edi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42f890
mov dword [ebp - 0x38], edx
mov word [edi], 0x5c
mov dword [ebx], 0x95e0b68
mov dword [ebx + 4], 0x57b0779
mov dword [ebx + 8], 0x176037b
mov dword [ebx + 0xc], 0x1d731f20
mov dword [ebx + 0x10], 0x196b1b90
mov dword [ebx + 0x14], 0x15691796
mov dword [ebx + 0x18], 0x1169136d
mov dword [ebx + 0x1c], 0x2d5a2f74
mov dword [ebx + 0x20], 0x29a02b57
mov dword [ebx + 0x24], 0x25522753
mov dword [ebx + 0x28], 0x215c2358
mov word [ebx + 0x2c], 0x3f20
mov eax, dword [ebp - 0xc0]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 0x30
ja 0x42f944
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [ebx + eax]
push dword [ebp - 0x2c]
push eax
call fcn.004323b0
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [ebx + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 0x31
jb 0x42f920
mov eax, dword [ebp - 0x34]
lea esi, [eax + 2]
add edi, 2
movzx eax, word [eax]
test ax, ax
je 0x42f971
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edi], ax
add edi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42f960
mov word [edi], 0
movzx eax, word [ebx]
test ax, ax
je 0x42f9a1
mov ecx, dword [ebp - 0xb8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edi], ax
add edi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42f990
mov word [edi], 0
cmp dword [ebp - 0x4c], 0xfffffff7
jge 0x42f9c0
mov eax, 0xffffffff
jmp 0x42f9c9
mov eax, dword [ebp - 0x98]
add eax, 0x12
push eax
call fcn.0040c8b0
add esp, 4
mov edi, eax
mov edx, dword [ebp - 0x50]
mov dword [edx], 0xb722895b
mov dword [edx + 4], 0xb328b559
mov dword [edx + 8], 0xbf2ab15d
mov dword [edx + 0xc], 0xbb54bd50
mov word [edx + 0x10], 0xb9b8
mov eax, dword [ebp - 0xbc]
mov word [eax], 0
mov byte [eax + 2], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 0x14
ja 0x42fa47
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [edx + eax]
push dword [ebp - 0x2c]
push eax
call fcn.00432430
mov edx, dword [ebp - 0x50]
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [edx + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 0x15
jb 0x42fa20
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
mov eax, edi
test cx, cx
je 0x42fa71
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [esi]
add esi, 2
test cx, cx
jne 0x42fa60
mov word [eax], 0
movzx ecx, word [edx]
test cx, cx
je 0x42fab0
mov edx, dword [ebp - 0xb4]
mov esi, dword [ebp - 0xa0]
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42fa90
jmp 0x42fab6
mov esi, dword [ebp - 0xa0]
mov word [eax], 0
mov dword [esi], 0x8f8e89f6
mov byte [esi + 4], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 4
ja 0x42f820
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x2c]
movzx eax, byte [esi + eax]
push dword [ebp - 0x2c]
push eax
call fcn.004324b0
add esp, 8
mov ecx, dword [ebp - 0x2c]
mov byte [esi + ecx], al
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp eax, 5
jb 0x42fae0
jmp 0x42f820
mov ecx, dword [ebp - 0x90]
and cl, 1
or cl, al
mov dword [ebp - 0x90], ecx
jmp dword [0x452674]
mov edi, dword [ebp - 0x68]
jmp dword [0x45268c]
jmp dword [0x452694]
mov eax, dword [case.0x42dc15.144]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x452664]
push dword [ebp - 0xb0]
call fcn.0040c8c0
add esp, 4
mov eax, dword [ebp - 0x44]
mov esi, dword [eax]
mov dword [ebp - 0x2c], 0xe0e7e6e5
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x54]
cmp eax, 7
ja 0x42fbc6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x54]
movzx eax, byte [ebp + eax - 0x2c]
push dword [ebp - 0x54]
push eax
call fcn.00431cc0
add esp, 8
mov ecx, dword [ebp - 0x54]
mov byte [ebp + ecx - 0x2c], al
inc dword [ebp - 0x54]
mov eax, dword [ebp - 0x54]
cmp eax, 8
jb 0x42fba0
mov eax, dword [0x456088]
test eax, eax
je 0x42fc00
mov ecx, dword [ebp - 0x2c]
xor edx, edx
mov edi, dword [0x45608c]
nop
nop
nop
nop
nop
nop
cmp dword [edi + edx*8], 0x625b6034
je 0x42fbf0
inc edx
cmp eax, edx
jne 0x42fbe0
jmp 0x42fc00
mov eax, dword [edi + edx*8 + 4]
cmp eax, ecx
jne 0x42fc16
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [ebp - 0x68]
mov eax, dword [ebp - 0x30]
jmp dword [0x452654]
movzx eax, al
jmp dword [eax*4 + 0x45265c]
push esi
push 1
push dword [0x456090]
push eax
call fcn.00446c10
add esp, 0x10
mov edi, dword [ebp - 0x68]
mov eax, dword [ebp - 0x30]
jmp dword [0x452654]
push eax
call fcn.00404c10
mov eax, dword [ebp - 0x64]
add esp, 4
push eax
call fcn.00404c10
mov eax, dword [ebp - 0x64]
add esp, 4
jmp dword [0x452644]
jmp dword [0x45264c]
push 0xe050b307
push dword [0x45607c]
call fcn.00449620
add esp, 8
push 0xe050b307
push dword [0x45607c]
call fcn.00449620
add esp, 8
jmp dword [0x452620]
push esi
call fcn.0040c8c0
add esp, 4
push esi
call fcn.0040c8c0
add esp, 4
jmp dword [0x45269c]
int3
push 0x60
push 3
push 0x120089
mov edi, dword [ebp - 0x38]
push edi
push dword [ebp - 0x3c]
call fcn.0044a040
add esp, 0x14
not eax
shr eax, 0x1f
mov ebx, dword [ebp - 0x48]
jmp dword [eax*4 + 0x4526d4]
xor eax, eax
jmp dword [0x4527cc]
push dword [ebp - 0x3c]
mov esi, eax
call fcn.0040c8c0
mov eax, esi
add esp, 4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0
push ebx
push dword [edi]
call fcn.0044a3c0
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [ebp - 0x28], 0
jmp dword [eax*4 + 0x4526dc]
mov esi, dword [ebx]
lea eax, [esi + 1]
push eax
call fcn.0040c8b0
add esp, 4
push 0
push esi
mov dword [ebp - 0x50], eax
push eax
push dword [edi]
call fcn.0044a4a0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [ebp - 0x28], 0
jmp dword [eax*4 + 0x4526e4]
jmp dword [0x4527b4]
push dword [ebp - 0x50]
call fcn.0040c8c0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x4527c8]
mov esi, dword [edi]
mov dword [ebp - 0x14], 0xe0e7e6e5
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x18]
cmp eax, 7
ja 0x42fdc6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x14]
push dword [ebp - 0x18]
push eax
call fcn.00431cc0
add esp, 8
mov ecx, dword [ebp - 0x18]
mov byte [ebp + ecx - 0x14], al
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x42fda0
mov eax, dword [0x456088]
test eax, eax
je 0x42fdfc
mov ecx, dword [ebp - 0x14]
xor edx, edx
mov edi, dword [0x45608c]
nop
nop
nop
nop
nop
nop
cmp dword [edi + edx*8], 0x625b6034
je 0x42fdf0
inc edx
cmp eax, edx
jne 0x42fde0
jmp 0x42fdfc
mov eax, dword [edi + edx*8 + 4]
cmp eax, ecx
jne 0x430358
mov eax, dword [ebp - 0x28]
and al, 1
jmp dword [0x4527cc]
mov eax, dword [ebx]
mov esi, dword [ebp - 0x50]
mov byte [esi + eax], 0
mov ecx, dword [ebp - 0x20]
mov eax, ecx
add eax, 0xb
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x28], 0
nop
nop
nop
nop
nop
nop
nop
mov dword [ecx], 0xa6aea8a6
mov dword [ecx + 4], 0xa2aba4aa
mov word [ecx + 8], 0xeb95
mov byte [ecx + 0xa], 0xca
mov eax, dword [ebp - 0x48]
mov byte [eax + 4], 0
mov dword [eax], 0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
cmp eax, 0xf
ja 0x42fe9a
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x14]
movzx eax, byte [ecx + eax]
push dword [ebp - 0x14]
push eax
call fcn.00432670
add esp, 8
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
mov byte [edx + ecx], al
mov ecx, dword [ebp - 0x20]
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0x10
jb 0x42fe70
movzx edx, byte [ecx]
test dl, dl
je 0x42fed2
mov eax, ecx
mov ecx, esi
jmp 0x42febd
inc esi
mov ecx, esi
mov eax, dword [ebp - 0x20]
movzx edx, byte [eax]
test dl, dl
je 0x42fed2
mov dh, byte [ecx]
test dh, dh
je 0x42fed0
cmp dh, dl
jne 0x42feb0
inc ecx
inc eax
jmp 0x42feb6
xor esi, esi
xor eax, eax
test esi, esi
sete al
jmp dword [eax*4 + 0x4526ec]
movzx eax, byte [esi + 0xa]
add esi, 0xa
xor edx, edx
test al, al
je 0x42ff02
mov ecx, esi
nop
cmp al, 0x22
je 0x42ff00
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x42fef0
jmp 0x42ff02
mov edx, ecx
mov ecx, edx
sub ecx, esi
xor eax, eax
mov dword [ebp - 0x1c], ecx
cmp ecx, 5
setb al
mov ecx, dword [ebp - 0x20]
jmp dword [eax*4 + 0x4526f4]
jmp dword [0x452704]
xor eax, eax
cmp byte [edx - 1], 0x74
setne al
jmp dword [eax*4 + 0x45270c]
jmp dword [0x45271c]
xor eax, eax
cmp byte [edx - 2], 0x78
setne al
jmp dword [eax*4 + 0x452724]
xor eax, eax
cmp byte [edx - 3], 0x74
setne al
jmp dword [eax*4 + 0x45272c]
xor eax, eax
cmp byte [edx - 4], 0x2e
setne al
jmp dword [eax*4 + 0x452734]
mov ecx, dword [ebp - 0x1c]
mov eax, ecx
inc eax
mov dword [ebp - 0x2c], edx
jns 0x42ff88
mov eax, 0xffffffff
jmp 0x42ff8f
lea eax, [ecx*2 + 2]
mov edi, ecx
push eax
call fcn.0040c8b0
add esp, 4
mov dword [ebp - 0x14], 0
lea ecx, [eax + edi*2]
mov edx, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x30], ecx
cmp eax, ecx
mov edi, dword [ebp - 0x2c]
jae 0x42ffee
mov edx, dword [ebp - 0x24]
cmp esi, edi
jae 0x42ffee
mov edx, dword [ebp - 0x24]
mov ebx, esi
nop
cmp byte [ebx], 0
je 0x42ffee
lea eax, [ebp - 0x14]
push eax
push edi
push ebx
mov dword [ebp - 0x34], edx
call fcn.004112b0
mov edx, dword [ebp - 0x34]
add esp, 0xc
movzx ecx, word [ebp - 0x14]
mov word [edx], cx
add edx, 2
cmp edx, dword [ebp - 0x30]
jae 0x42ffee
add ebx, eax
cmp ebx, edi
jb 0x42ffc0
mov word [edx], 0
push 0x60
push 3
push 0x120089
mov edi, dword [ebp - 0x44]
push edi
push dword [ebp - 0x24]
call fcn.0044a040
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x45273c]
mov edi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
jmp dword [0x45278c]
push 0
mov ebx, dword [ebp - 0x54]
push ebx
push dword [edi]
call fcn.0044a3c0
add esp, 0xc
test eax, eax
setns al
mov edi, dword [ebx]
cmp edi, 0x100000
setb cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x452744]
push edi
call fcn.0040c8b0
add esp, 4
push 0
push edi
mov dword [ebp - 0x34], eax
push eax
mov eax, dword [ebp - 0x44]
push dword [eax]
call fcn.0044a4a0
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x45274c]
xor edx, edx
mov ecx, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x1c]
jmp 0x430098
add ecx, 2
test di, di
je 0x4300a9
mov eax, edx
movzx edi, word [ecx]
mov edx, ecx
cmp di, 0x5c
je 0x430090
mov edx, eax
jmp 0x430090
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x452754]
mov dword [ebp - 0x4c], 0
xor eax, eax
jmp 0x4300d1
sub eax, dword [ebp - 0x24]
sar eax, 1
lea ecx, [eax + 1]
mov dword [ebp - 0x4c], ecx
not eax
add eax, ebx
mov edi, dword [ebp - 0x40]
add eax, 0x1b
push eax
call fcn.0040c8b0
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [edi], 0xa0bea087
mov dword [edi + 4], 0xbbb1a7a2
mov dword [edi + 8], 0xb29077a0
mov dword [edi + 0xc], 0x6cafbcb4
mov dword [edi + 0x10], 0x86aaae92
mov dword [edi + 0x14], 0x48868090
mov word [edi + 0x18], 0x5649
mov byte [edi + 0x1a], 0x66
mov word [edi + 0x1b], 0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
cmp eax, 0x1c
ja 0x430154
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x14]
movzx eax, byte [edi + eax]
push dword [ebp - 0x14]
push eax
call fcn.004326f0
add esp, 8
mov ecx, dword [ebp - 0x14]
mov byte [edi + ecx], al
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0x1d
jb 0x430130
movzx ecx, byte [edi]
mov edi, dword [ebp - 0x30]
mov eax, edi
test cl, cl
je 0x43017b
mov edx, dword [ebp - 0x5c]
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x430170
mov edi, ebx
not ebx
mov edx, dword [ebp - 0x4c]
and ebx, edx
mov ecx, edx
not ecx
and ecx, edi
mov dword [ebp - 0x58], ecx
mov byte [eax], 0
mov dword [ebp - 0x1c], ebx
sub ecx, ebx
je 0x4301bb
add esi, edx
mov edi, ecx
and edi, 3
je 0x4301c2
xor ebx, ebx
movzx edx, byte [esi]
cmp dl, 1
sbb esi, 0xffffffff
mov byte [eax + ebx], dl
inc ebx
cmp edi, ebx
jne 0x4301a2
add eax, ebx
sub ecx, ebx
mov ebx, eax
jmp 0x4301c2
mov ebx, eax
mov edi, dword [ebp - 0x30]
jmp 0x430209
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x58]
cmp edx, 0xfffffffc
mov edi, dword [ebp - 0x30]
ja 0x430209
movzx edx, byte [esi]
cmp dl, 1
sbb esi, 0xffffffff
mov byte [eax], dl
movzx edx, byte [esi]
cmp dl, 1
sbb esi, 0xffffffff
mov byte [eax + 1], dl
movzx edx, byte [esi]
cmp dl, 1
sbb esi, 0xffffffff
mov byte [eax + 2], dl
movzx edx, byte [esi]
cmp dl, 1
sbb esi, 0xffffffff
lea ebx, [eax + 4]
mov byte [eax + 3], dl
mov eax, ebx
add ecx, 0xfffffffc
jne 0x4301d0
mov byte [ebx], 0
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x54]
push dword [eax]
push dword [ebp - 0x34]
push edi
call fcn.0040d660
mov ecx, dword [ebp - 0x28]
and cl, 1
or cl, al
mov dword [ebp - 0x28], ecx
jmp dword [0x45275c]
push edi
call fcn.0040c8c0
add esp, 4
mov eax, dword [case.0x430010.2]
nop
nop
nop
nop
jmp eax
jmp dword [0x452774]
push dword [ebp - 0x34]
call fcn.0040c8c0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x452784]
mov eax, dword [ebp - 0x44]
mov esi, dword [eax]
mov dword [ebp - 0x14], 0xe0e7e6e5
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x18]
cmp eax, 7
ja 0x4302b6
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x14]
push dword [ebp - 0x18]
push eax
call fcn.00431cc0
add esp, 8
mov ecx, dword [ebp - 0x18]
mov byte [ebp + ecx - 0x14], al
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x430290
mov eax, dword [0x456088]
test eax, eax
je 0x4302e8
mov ecx, dword [ebp - 0x14]
xor edx, edx
mov edi, dword [0x45608c]
nop
nop
nop
nop
nop
nop
cmp dword [edi + edx*8], 0x625b6034
je 0x4302e0
inc edx
cmp eax, edx
jne 0x4302d0
jmp 0x4302e8
mov eax, dword [edi + edx*8 + 4]
cmp eax, ecx
jne 0x430337
mov edi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
jmp dword [0x45278c]
push dword [ebp - 0x24]
call fcn.0040c8c0
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x20]
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, eax
jmp dword [0x4527a0]
mov eax, dword [case.0x430010.27]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp 0x42fe30
push esi
push 1
push dword [0x456090]
push eax
call fcn.00446c10
add esp, 0x10
mov edi, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
jmp dword [0x45278c]
push esi
push 1
push dword [0x456090]
push eax
call fcn.00446c10
add esp, 0x10
mov eax, dword [ebp - 0x28]
and al, 1
jmp dword [0x4527cc]
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
cmp eax, 0x3f
ja 0x4303b4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebx + eax]
push dword [ebp - 0x14]
push eax
call fcn.004325d0
add esp, 8
mov ecx, dword [ebp - 0x14]
mov byte [ebx + ecx], al
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0x40
jb 0x430390
push esi
push edi
push dword [ebp - 0x3c]
push 0x1f
push ebx
push 0
call dword [ebp - 0x1c]
mov eax, dword [case.0x42dc15.172]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
push eax
mov esi, esp
sub esp, 0x44
mov edi, esp
sub esp, 0x40
mov dword [ebp - 0x1c], esp
push eax
mov dword [ebp - 0x38], esp
push eax
mov dword [ebp - 0x48], esp
sub esp, 0x10
mov dword [ebp - 0x20], esp
push eax
mov dword [ebp - 0x44], esp
push eax
mov dword [ebp - 0x54], esp
sub esp, 0x20
mov dword [ebp - 0x40], esp
mov ebx, dword [0x456084]
mov dword [edi], 0x63236145
mov dword [edi + 4], 0x67166514
mov dword [edi + 8], 0x7b1b793c
mov dword [edi + 0xc], 0x7f1f7d08
mov dword [edi + 0x10], 0x731e7155
mov dword [edi + 0x14], 0x7709752a
mov dword [edi + 0x18], 0x8bef89fc
mov dword [edi + 0x1c], 0x8fef8dfc
mov dword [edi + 0x20], 0x83b981e4
mov dword [edi + 0x24], 0x87ea85bf
mov dword [edi + 0x28], 0x9bff99eb
mov dword [edi + 0x2c], 0x9fed9def
mov dword [edi + 0x30], 0x93ed91e9
mov dword [edi + 0x34], 0x97a895ea
mov dword [edi + 0x38], 0xabd7a920
mov dword [edi + 0x3c], 0xafaeadd0
mov byte [edi + 0x40], 0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
cmp eax, 0x40
ja 0x4304b4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x14]
movzx eax, byte [edi + eax]
push dword [ebp - 0x14]
push eax
call fcn.00432540
add esp, 8
mov ecx, dword [ebp - 0x14]
mov byte [edi + ecx], al
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0x41
jb 0x430490
push esi
push 0
push 0
push 0x1f
push edi
push 0
call ebx
jmp dword [0x4526bc]
push eax
mov esi, esp
sub esp, 0x44
mov edi, esp
mov ebx, dword [0x456084]
mov dword [edi], 0x63236145
mov dword [edi + 4], 0x67166514
mov dword [edi + 8], 0x7b1b793c
mov dword [edi + 0xc], 0x7f1f7d08
mov dword [edi + 0x10], 0x731e7155
mov dword [edi + 0x14], 0x7709752a
mov dword [edi + 0x18], 0x8bef89fc
mov dword [edi + 0x1c], 0x8fef8dfc
mov dword [edi + 0x20], 0x83b981e4
mov dword [edi + 0x24], 0x87ea85bf
mov dword [edi + 0x28], 0x9bff99eb
mov dword [edi + 0x2c], 0x9fed9def
mov dword [edi + 0x30], 0x93ed91e9
mov dword [edi + 0x34], 0x97a895ea
mov dword [edi + 0x38], 0xabd7a920
mov dword [edi + 0x3c], 0xafaeadd0
mov byte [edi + 0x40], 0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
cmp eax, 0x40
ja 0x430584
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x14]
movzx eax, byte [edi + eax]
push dword [ebp - 0x14]
push eax
call fcn.00432540
add esp, 8
mov ecx, dword [ebp - 0x14]
mov byte [edi + ecx], al
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0x41
jb 0x430560
push esi
push 0
push 0
push 0x1f
push edi
push 0
call ebx
jmp case.0x42dc15.166
mov edi, dword [esi]
test edi, edi
jns 0x4305a2
mov eax, 0xffffffff
jmp 0x4305a5
lea eax, [edi + edi]
mov ebx, dword [ebp - 0x1c]
push eax
call fcn.0040c8b0
add esp, 4
mov dword [ebp - 0x3c], eax
mov eax, dword [0x456084]
mov dword [ebp - 0x1c], eax
mov dword [ebx], 0xf1cd0feb
mov dword [ebx + 4], 0xf562f360
mov dword [ebx + 8], 0xf955f730
mov dword [ebx + 0xc], 0xfd59fb6c
mov dword [ebx + 0x10], 0xe142ff1b
mov dword [ebx + 0x14], 0xe573e32e
mov dword [ebx + 0x18], 0xe941e770
mov dword [ebx + 0x1c], 0xed49eb78
mov dword [ebx + 0x20], 0xd103ef48
mov dword [ebx + 0x24], 0xd56ed33d
mov dword [ebx + 0x28], 0xd971d741
mov dword [ebx + 0x2c], 0xdd4fdb4d
mov dword [ebx + 0x30], 0xc14fdf77
mov dword [ebx + 0x34], 0xc52cc36e
mov dword [ebx + 0x38], 0xc969c75c
mov dword [ebx + 0x3c], 0xcdcacb64
jmp 0x430375
retf
int3
salc
inc edx
add byte [eax], ah
xlatb
inc edx
add al, ah
salc
inc edx
add al, ch
salc
inc edx
add al, ah
salc
inc edx
add al, ah
salc
inc edx
add al, ah
salc
inc edx
add al, ch
salc
inc edx
add al, ah
rol dword [edx], cl
rcl bl, 1
inc edx
add byte [ebp - 0x1fffbd2d], bl
rol dword [edx], cl
stosd dword es:[edi], eax
rol dword [edx], cl
cmp edx, edi
inc edx
add byte [eax - 0x29], al
inc edx
add byte [eax - 0x29], al
inc edx
add byte [edx - 0x29], al
inc edx
add byte [eax - 0x29], al
inc edx
add byte [eax + ebx*8 + 0x42], cl
add byte [esi - 0x28], ah
inc edx
add byte [ecx + ebx*8], ah
inc edx
add byte [edi - 0x28], dh
inc edx
add byte [edi - 0x27], al
inc edx
add byte [ebp - 0x27], dl
inc edx
add al, bh
fiadd dword [edx]
js 0x4523db
inc edx
add dh, ah
fiadd dword [edx]
lodsb al, byte [esi]
fld dword [edx]
cmpsd dword [esi], dword es:[edi]
fiadd dword [edx]
or edx, ebx
inc edx
add byte [edi - 0x41ffbd26], ah
fild dword [edx]
cmpsd dword [esi], dword es:[edi]
fiadd dword [edx]
sbb al, 0xdc
inc edx
add byte [edx + ebx*8 - 0x2519ffbe], dh
inc edx
add al, dl
fiadd dword [edx]
mov edx, 0xd00042da
fiadd dword [edx]
out 0xda, al
inc edx
add ah, ch
fiadd dword [edx]
clc
fiadd dword [edx]
mov al, 0xdb
inc edx
add byte [eax - 0x4fffbd25], dh
fild dword [edx]
mov dl, 0xdb
inc edx
add byte [eax + 0x700042db], bh
in al, 0x42
add byte [ecx], dl
ljmp 0x42
in al, 0x42
add bl, ch
jmp 0xe4c32500
loopne 0x452511
add ch, dl
fild word [edx]
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
aad 0xdf
inc edx
add al, al
fild word [edx]
adc al, ah
inc edx
add byte [eax], dl
loopne 0x452531
add byte [eax], dl
loopne 0x452535
add byte [esi], dl
loopne 0x452539
add byte [eax], dl
loopne 0x45253d
add byte [0xa00042e1], al
loopne 0x452545
add bh, al
loopne 0x452549
add al, ah
loopne 0x45254d
add al, ah
loopne 0x452551
add al, ah
loopne 0x452555
add dl, ah
loopne 0x452559
add al, ah
loopne 0x45255d
add byte [0xf00042e1], al
loopne 0x452565
add al, dh
loopne 0x452569
add al, dh
loopne 0x45256d
add al, dh
loopne 0x452571
add dl, dh
loopne 0x452575
add byte [eax], ah
loope 0x452579
add byte [eax], ah
loope 0x45257d
add byte [eax], ah
loope 0x452581
add byte [edx], ah
loope 0x452585
add byte [ebx], bh
loope 0x452589
add byte [ebp - 0x1f], al
inc edx
loope 0x45258d
add byte [eax + 0x770042e1], dh
loope 0x452591
add byte [edi - 0x1f], dh
inc edx
loope 0x452595
add byte [eax - 0x17ffbd1f], dh
loope 0x452599
add al, ch
loope 0x45259d
add dh, dh
loope 0x4525a1
add byte [eax], al
loop case.0x42ee91.6
add dl, dl
loop 0x4525a9
add byte [ecx], dl
fild word [edx]
test ah, ah
inc edx
in al, 0x42
add byte [esi], al
in al, 0x42
add dh, bh
fld qword [edx]
pop es
fiadd word [edx]
sti
loop 0x4525c1
add byte [esi - 0x49ffbd22], ah
fiadd word [edx]
mov dh, 0xde
inc edx
add byte [ebx], bl
fiadd word [edx]
sbb esp, ebx
inc edx
jecxz 0x4525cd
add cl, dl
jecxz 0x4525d1
add dh, bl
jecxz 0x4525d5
add byte [eax - 0x1c], ah
inc edx
in al, 0x42
add byte [eax - 0x1c], ah
inc edx
in al, 0x42
add bl, dh
fld qword [edx]
pushal
in al, 0x42
add byte [eax - 0x27ffbd12], bl
out dx, al
inc edx
add al, bl
out dx, al
inc edx
add al, bl
out dx, al
inc edx
add byte [esi - 0x56ffbd12], bl
out dx, al
inc edx
add byte [ecx - 0x10], bh
inc edx
add byte [eax + 0x10042f0], ah
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax + 0x740042fc], ch
sti
inc edx
add dh, al
invalid
invalid