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

Disassembly:
jnp 0x422433
jp 0x422433
call 0x3c882ac1
pop eax
mov al, byte [esi]
inc esi
cmp al, 0x58
ja 0x422540
jnp 0x422443
jp 0x422443
call 0x7a3e9fd4
add edi, dword [eax + 1]
lea edi, [ebx - 4]
jns 0x42244b
js 0x42244b
call 0x87517c8b
push 0xf000001
mov dh, 0xc0
cmp al, 0x58
ja case.default.0x422456
movzx eax, al
jmp dword [eax*4 + 0x43a574]
mov dword [esp + 0x10], edi
mov dword [esp + 8], ebx
mov dword [esp], esi
mov dword [esp + 4], edx
jl 0x422471
jge 0x422471
call 0xf4a6a00
mov bh, 0x80
int3
mov eax, dword [ebp + 8]
movzx eax, word [eax + 0x4cc]
mov dword [esp + 0x14], eax
test eax, eax
je 0x4225a3
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
jae 0x422492
jb 0x422492
call 0x8b4a6a21
or al, 4
add byte [eax], al
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4c8]
mov dword [esp + 0xc], eax
xor ebx, ebx
jl 0x4224a6
jge 0x4224a6
call 0xc666935
mov eax, dword [esp + 0xc]
mov edi, dword [eax + ebx*4]
jb 0x4224b2
jae 0x4224b2
call 0x44770d0d
add dword [eax], eax
push edi
call sub.msvcrt.dll_strlen
add esp, 4
cmp esi, eax
jne 0x4224d6
jnp 0x4224c4
jp 0x4224c4
call 0x75417c1e
and al, 0x24
push esi
push edi
push dword [esp + 0x24]
call fcn.004030d7
add esp, 0xc
test eax, eax
je 0x4224e7
jb 0x4224db
jae 0x4224db
call 0x249e5e22
adc al, 0x75
mov edi, 0xbce9
add byte [edx + 3], bh
inc ebx
cmp dword [esp + 0x14], ebx
jne 0x4224a1
jmp 0x4225a3
jp 0x4224ec
jnp 0x4224ec
call 0x1066a17b
mov edi, dword [esp + 0x10]
mov dword [edi], ebx
mov esi, dword [esp]
mov al, byte [esi]
inc esi
cmp al, 0x59
mov edx, dword [esp + 4]
mov ebx, dword [esp + 8]
jb 0x422446
jmp 0x422540
mov dword [esp], esi
jae 0x422512
jb 0x422512
call 0xf4a6aa1
mov bh, 0xb0
int3
mov eax, dword [ebp + 8]
movzx esi, word [eax + 0x4cc]
test esi, esi
jne 0x424569
jl 0x422529
jge 0x422529
call 0x4228f4
add byte [eax], al
mov dword [ebx], 0
add ebx, 4
mov esi, dword [esp]
mov al, byte [esi]
inc esi
cmp al, 0x59
jb 0x42243e
mov dword [esp + 8], ebx
mov edi, edx
mov ebx, esi
jp 0x42254d
jnp 0x42254d
call 0x1002db60
mov bh, 0x84
add byte [eax - 0x72ffbfa9], cl
sbb byte [eax + 0x3100404b], 0xc9
movzx eax, al
movzx eax, word [eax + eax + 0x405788]
lea eax, [eax + 0x404b98]
xor ecx, ecx
jge 0x422565
jl 0x422565
call 0x4052db78
movzx edx, byte [eax]
inc eax
mov esi, ecx
shl esi, 7
mov ecx, edx
and ecx, 0x7f
or ecx, esi
test dl, dl
js 0x422560
jo 0x42257e
jno 0x42257e
call 0x408dbe3c
add byte [ecx], ch
ror dword [ecx - 0x70ab7206], cl
add al, 0xc1
loope 0x42259e
mov edx, 0x404b98
sub ebx, edx
mov edx, edi
lea edx, [edi + ecx*4 + 4]
shl ecx, 0x10
add ecx, ebx
mov dword [edx - 4], ecx
mov esi, eax
mov ebx, dword [esp + 8]
jg 0x42259e
jle 0x42259e
call fcn.0040b18b
push dword [ecx + 3]
jmp 0x42242e
jno 0x4225a8
jo 0x4225a8
call 0x10666a37
mov eax, dword [esp + 0x10]
mov dword [eax], 0xffffffff
mov edx, dword [esp + 4]
mov esi, dword [esp]
jmp 0x422595
jne 0x4225c0
je 0x4225c0
call 0x3bafdaf
jmp 0x422599
js 0x4225c7
jns 0x4225c7
call 0x843e6856
ret 0x89fc
mov eax, dword [edx - 4]
add edx, 0xfffffffc
mov ecx, eax
shr ecx, 0xe
and ecx, 0xfffffffc
sub edx, ecx
and eax, 0xffff
je 0x42463b
ja 0x4225e7
jbe 0x4225e7
call 0x4bdad678
inc eax
add bl, ch
stosb byte es:[edi], al
lea esi, [eax + 0x404b98]
jmp 0x422599
mov edi, edx
jp 0x4225f6
jnp 0x4225f6
call 0x4650dc09
movzx ecx, byte [esi]
inc esi
mov edx, ecx
and edx, 0x40
add edx, edx
mov eax, ecx
and eax, 0x7f
sub eax, edx
test cl, cl
jns 0x423c50
jg 0x422615
jle 0x422615
call 0x4650dc28
movzx ecx, byte [esi]
inc esi
shl eax, 7
mov edx, ecx
and edx, 0x7f
or eax, edx
jmp 0x422608
mov edi, edx
xor eax, eax
jl 0x42262e
jge 0x42262e
call 0x4650dc41
movzx ecx, byte [esi]
inc esi
mov edx, eax
shl edx, 7
mov eax, ecx
and eax, 0x7f
or eax, edx
test cl, cl
js 0x422629
jo 0x422647
jno 0x422647
call 0x8945070c
cli
shl eax, 2
mov edx, edi
mov ecx, edi
sub ecx, eax
mov eax, dword [ecx - 8]
jmp 0x42426d
mov eax, edi
mov edi, edx
ja 0x422661
jbe 0x422661
call 0x10666aee
mov dword [esp + 0x10], eax
mov eax, dword [eax]
xor ecx, ecx
jo 0x42266e
jno 0x42266e
call 0x4658dc81
movzx edx, byte [esi]
inc esi
mov ebx, esi
mov esi, ecx
shl esi, 7
mov ecx, edx
and ecx, 0x7f
or ecx, esi
mov esi, ebx
test dl, dl
js 0x422669
jae 0x42268b
jb 0x42268b
call 0x89450850
cli
shl ecx, 2
mov edx, edi
sub edx, ecx
mov dword [edx - 8], eax
mov edx, edi
jmp 0x423a25
mov edi, edx
jns 0x4226a3
js 0x4226a3
call 0x8950dcb6
retf 0xe283
movzx ecx, byte [esi]
mov edx, ecx
and edx, 0x40
add edx, edx
mov eax, ecx
and eax, 0x7f
sub eax, edx
test cl, cl
jns 0x423c5f
je 0x4226c1
jne 0x4226c1
call 0x190dcd4
movzx ecx, byte [esi + 1]
inc esi
shl eax, 7
mov edx, ecx
and edx, 0x7f
or eax, edx
jmp 0x4226b4
mov ebx, edi
mov edi, edx
je 0x4226db
jne 0x4226db
call 0x8950dcee
retf 0xe283
movzx ecx, byte [esi]
mov edx, ecx
and edx, 0x40
add edx, edx
mov eax, ecx
and eax, 0x7f
sub eax, edx
test cl, cl
jns 0x423c66
ja 0x4226f9
jbe 0x4226f9
call 0x190dd0c
movzx ecx, byte [esi + 1]
inc esi
shl eax, 7
mov edx, ecx
and edx, 0x7f
or eax, edx
jmp 0x4226ec
mov ebx, edi
mov edi, edx
jp 0x422713
jnp 0x422713
call 0x8950dd26
retf 0xe283
movzx ecx, byte [esi]
mov edx, ecx
and edx, 0x40
add edx, edx
mov eax, ecx
and eax, 0x7f
sub eax, edx
test cl, cl
jns 0x423c7d
jle 0x422731
jg 0x422731
call 0x190dd44
movzx ecx, byte [esi + 1]
inc esi
shl eax, 7
mov edx, ecx
and edx, 0x7f
or eax, edx
jmp 0x422724
mov eax, ebx
mov dword [esp], esi
jle 0x42274c
jg 0x42274c
call 0x8b4a84db
mov bl, 0x1c
add eax, dword [eax]
add byte [ebp - 0xc7bf00a], al
add dword [eax], eax
add byte [ecx + 0x79042454], cl
add edi, dword [eax + 1]
mov ebx, dword [ebp + 8]
mov esi, dword [ebx + 0x31c]
test esi, esi
je 0x422950
mov dword [esp + 4], edx
jns 0x422766
js 0x422766
call 0x8a3a77f5
inc esp
and al, 8
mov edx, dword [eax - 8]
mov dword [esp + 8], eax
mov edi, dword [eax - 4]
cmp edi, esi
cmovb esi, edi
jne 0x42277a
je 0x42277a
call 0x352ab09
add byte [eax], al
mov eax, dword [ebx + 0x310]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xc], edx
add ecx, edx
jns 0x42278f
js 0x42278f
call 0xe89278e9
in al, 8
invalid
push esi
push ecx
push eax
call fcn.0040307b
add esp, 0xc
cmp byte [ebx - 0x7b0], 0x16
jne 0x4227c0
jno 0x4227a8
jo 0x4227a8
call 0x352bb37
add byte [eax], al
mov edx, dword [ebx + 0x310]
jnp 0x4227b3
jp 0x4227b3
call 0x24667442
mov ecx, dword [esp + 0x24]
push esi
call fcn.00431d7f
add esp, 4
jo 0x4227c5
jno 0x4227c5
call 0xc667454
mov ecx, dword [esp + 0xc]
add ecx, esi
mov eax, dword [esp + 8]
mov dword [eax - 8], ecx
sub edi, esi
mov dword [eax - 4], edi
add dword [ebx + 0x310], esi
sub dword [ebx + 0x31c], esi
jmp 0x42294c
call 0x4227ee
add al, ch
mov cl, byte [ebx - 4]
shr dword [ebx - 8], cl
jmp case.0x422456.82
je 0x4227ff
jne 0x4227ff
call 0x323a6b8e
leave
mov eax, dword [ebx - 8]
xor ecx, ecx
cmp eax, dword [ebx - 4]
setne cl
jmp 0x423ad3
jnp 0x422814
jp 0x422814
call 0xb6512fa3
or byte [eax + 0x59], 0x40
add cl, ch
fmul dword [esi]
add byte [eax], al
mov eax, dword [edi]
movzx eax, byte [eax + 0x405948]
jmp 0x4236fa
jo 0x422827
jno 0x422827
call 0x8c3e6bb6
dec ebx
clc
mov eax, dword [ebx - 4]
mov ecx, dword [ebx - 8]
mov edi, ebx
mov ebx, dword [esp + 0x18]
add ecx, ebx
mov dword [esp + 4], edx
mov edx, dword [edi - 0xc]
add edx, ebx
mov ebx, edi
add ebx, 0xfffffff4
je 0x422848
jne 0x422848
call 0xe894799c
sub ecx, dword [eax]
invalid
push eax
push ecx
push edx
call fcn.0040307b
mov edx, dword [esp + 0x10]
jmp 0x4236ce
jb 0x42285e
jae 0x42285e
call 0x43523854
clc
movsd xmm0, qword [ebx - 8]
shufps xmm0, xmm0, 0xe1
movlps qword [ebx - 8], xmm0
jmp 0x422599
ja 0x422875
jbe 0x422875
call 0x8b4a6e04
xor byte [esp + eax + 0x88b0000], 0x8b
dec ecx
adc al, 0x7f
add edi, dword [esi + 1]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x14]
jg 0x422888
jle 0x422888
call 0x19b1dc
ror dword [ecx + 0x4c483fa], 1
push eax
mov edi, edx
call ecx
mov edx, edi
add esp, 4
jmp 0x42426d
jbe 0x42289c
ja 0x42289c
call 0x103a6c2b
scasd eax, dword es:[edi]
inc ebx
cld
mov eax, dword [ebx - 8]
imul eax, dword [ebx - 4]
mov dword [ebx - 8], eax
jmp case.0x422456.82
mov eax, ebx
mov dword [esp], esi
jne 0x4228b5
je 0x4228b5
call 0x8b4a8644
mov bl, 0x18
add eax, dword [eax]
add byte [ebp - 0x757bf00a], al
add byte [eax], al
add byte [ecx + 0x72042454], cl
add esi, dword [ebx + 1]
mov ebx, dword [ebp + 8]
mov esi, dword [ebx + 0x318]
test esi, esi
je 0x422950
mov dword [esp + 4], edx
jb 0x4228cf
jae 0x4228cf
call 0x8a3a715e
inc esp
and al, 8
mov ecx, dword [eax - 8]
mov dword [esp + 8], eax
mov edi, dword [eax - 4]
cmp edi, esi
cmovb esi, edi
js 0x4228e3
jns 0x4228e3
call 0x18666d72
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc], ecx
add eax, ecx
mov ecx, dword [ebx + 0x30c]
jo 0x4228f8
jno 0x4228f8
call 0xe8927a52
jnp 0x422905
push esi
push ecx
push eax
call fcn.0040307b
add esp, 0xc
cmp byte [ebx - 0x7b1], 0x16
jne 0x422929
invalid
dec edi
clc
invalid
jnp 0x422911
jp 0x422911
call 0x34ebca0
add byte [eax], al
mov edx, dword [ebx + 0x30c]
jb 0x42291c
jae 0x42291c
call 0x246675ab
mov ecx, dword [esp + 0x24]
push esi
call fcn.00431d7f
add esp, 4
jg 0x42292e
jle 0x42292e
call 0xc6675bd
mov ecx, dword [esp + 0xc]
add ecx, esi
mov eax, dword [esp + 8]
mov dword [eax - 8], ecx
sub edi, esi
mov dword [eax - 4], edi
add dword [ebx + 0x30c], esi
sub dword [ebx + 0x318], esi
mov edx, dword [esp + 4]
mov esi, dword [esp]
mov ebx, eax
jmp 0x422599
jge 0x42295f
jl 0x42295f
call 0x4dcde994
or byte [ebx], bh
sub dword [eax], 0xe9000005
xor byte [0x37b0000], cl
jnp 0x422974
xor eax, eax
mov ecx, dword [ebp + 8]
cmp eax, dword [ecx + 0x528]
jmp 0x42369f
jnp 0x422974
jp 0x422974
call 0x1f2b416f
cld
invalid
not dword [edi]
jmp 0x422599
jbe 0x422980
ja 0x422980
call 0x8b4a770f
cmp dword [esp + eax - 0x3f7b0000], 0x89243489
xlatb
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x4bc]
test eax, eax
mov dword [esp], esi
mov edi, edx
je 0x423ec2
jle 0x42299b
jg 0x42299b
call 0x4fabb2a
add byte [eax], al
mov edx, dword [ecx + 0x4b8]
add edx, 4
xor ecx, ecx
jbe 0x4229ab
ja 0x4229ab
call 0x4ccf5c3a
xor dword [ebx], eax
mov esi, dword [edx]
lea ecx, [ecx + esi + 3]
add edx, 8
dec eax
jne 0x4229a6
jmp 0x423ec4
mov edi, ebx
jns 0x4229c3
js 0x4229c3
call 0x8b4a8752
cmp dword [esp + eax - 0x3f7b0000], 0xf
test ah, bh
adc al, 0
add byte [ebx + eax + 0x75], dh
add eax, ebp
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x4bc]
test eax, eax
je 0x423ed0
je 0x4229d9
jne 0x4229d9
call 0x4fab568
add byte [eax], al
mov ecx, dword [ebx + 0x4b8]
mov dword [esp + 4], edx
mov edx, dword [ecx]
mov dword [ebx + 0x4c0], edx
mov edx, dword [ecx + 4]
mov dword [ebx + 0x4c4], edx
add ecx, 8
mov dword [ebx + 0x4b8], ecx
dec eax
mov dword [ebx + 0x4bc], eax
mov ebx, edi
mov dword [edi], edx
mov edx, dword [esp + 4]
jmp 0x42426f
jns 0x422a16
js 0x422a16
call 0x8b4a77a5
sub dword [eax + 0x3890000], 0x530818b
add byte [eax], al
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x52c]
mov dword [ebx], eax
mov eax, dword [ecx + 0x530]
mov dword [ebx + 4], eax
add ebx, 8
jmp 0x422599
jp 0x422a37
jnp 0x422a37
call 0x8b4a6fc6
add byte [eax + 5], 0
add byte [ebp + 0x51840fc0], al
sti
invalid
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x540]
test eax, eax
je 0x422599
ja 0x422a4d
jbe 0x422a4d
call 0x49cd32dc
add al, 0x78
add edi, dword [ecx + 1]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
js 0x422a57
jns 0x422a57
call 0x4f8f44
add byte [ecx + 3], bh
jns 0x422a61
jmp 0x4237c0
jns 0x422a61
js 0x422a61
call 0x4dcdea96
or byte [ebx], bh
and dword [eax + 0x2ee90000], 0x7100000c
jno 0x422a76
jo 0x422a76
xor eax, eax
mov ecx, dword [ebp + 8]
cmp eax, dword [ecx + 0x524]
jmp 0x42369f
jno 0x422a76
jo 0x422a76
call 0x4ccd3205
and al, 0x18
mov eax, dword [edi]
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + eax]
jmp 0x4236fa
mov dword [esp], esi
mov dword [esp + 4], edx
jge 0x422a90
jl 0x422a90
call 0x8a3e6e1f
inc esp
and al, 0x14
mov eax, dword [ebx - 4]
mov dword [esp + 0x14], eax
mov eax, dword [ebx - 0xc]
mov ecx, dword [ebx - 0x14]
mov dword [esp + 0x28], ecx
mov edx, dword [ebx - 0x10]
xor ecx, ecx
cmp dword [ebx - 8], 0
sete cl
shl ecx, 4
mov edi, dword [ebp + 8]
mov ecx, dword [ecx + edi + 0x4dc]
jo 0x422abf
jno 0x422abf
call 0x1b52e35
jb 0x422ac4
jae 0x422ac4
call 0x1ba2e41
jns 0x422ac9
js 0x422ac9
call 0x98c9af58
add al, 0
add byte [ecx - 0x74dfdbbc], cl
jo 0x422adb
mov eax, dword [edi + eax*4 + 0x498]
mov dword [esp + 0x20], eax
mov esi, dword [eax + 4]
shr esi, 8
and esi, 0x7f
out 0x7f, al
movzx eax, word [edi - 0xd8]
mov dword [esp + 0xc], 0
cmp eax, 0x301
ja 0x422b01
call 0x422af9
add al, ch
mov eax, dword [ecx + 4]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
jae 0x422b0a
jb 0x422b0a
call 0x14666f99
mov eax, dword [esp + 0x14]
lea edi, [esi + eax]
mov eax, dword [esp + 0xc]
add eax, edi
mov dword [esp + 0x40], eax
je 0x422b20
jne 0x422b20
call 0x186677af
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xb8]
push eax
push dword [esp + 0x44]
call fcn.00425b18
add esp, 8
cmp dword [esp + 0x28], 0
je 0x423ee2
jne 0x422b48
je 0x422b48
call 0x1782fd9
dec dword [ebx - 0x72f3dbac]
mov word [eax + edi*4], fs
add byte [eax], al
add byte [ecx - 0x16d7dbb4], cl
lahf
adc eax, dword [eax]
add byte [ecx - 0x76fbdbac], cl
mov dword [esp + 4], edx
mov edi, ebx
js 0x422b6c
lea eax, [esi + esi]
add edi, edi
mov edx, dword [esp + 0xc]
lea ecx, [esp + 0xb8]
mov dword [esp + 0x28], ecx
jmp 0x423f00
mov dword [esp + 4], edx
mov edi, ebx
js 0x422b6c
jns 0x422b6c
call 0x8b4a88fb
xor dword [esp + eax + 0x88b0000], 0xffffff8b
dec ecx
sbb al, ch
add dword [eax], eax
add byte [eax], al
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x18]
call 0x422b80
add al, ch
push 0
push eax
call ecx
add esp, 8
xor ecx, ecx
cmp byte [eax], 2
jne 0x422b98
je 0x422b95
jne 0x422b95
call 0xe8467424
add dword [eax], eax
add byte [eax], al
mov ecx, dword [eax + 4]
call 0x422b9e
add al, ch
mov dword [ebx + 0x53c], ecx
mov ebx, edi
jmp 0x424243
js 0x422bb1
jns 0x422bb1
call 0xa3e6f40
inc ebx
clc
mov eax, dword [ebx - 4]
or dword [ebx - 8], eax
jmp case.0x422456.82
jns 0x422bc1
js 0x422bc1
call 0x4ccd3350
and al, 0x18
mov eax, dword [edi]
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + eax]
jmp 0x4236fa
ja 0x422bd5
jbe 0x422bd5
call 0x323a6f64
leave
mov eax, dword [ebx - 8]
xor ecx, ecx
cmp eax, dword [ebx - 4]
setle cl
jmp 0x423ad3
jnp 0x422bea
jp 0x422bea
call 0x53cdfc77
clc
mov eax, edx
mov edx, dword [ebx - 8]
mov dword [esp + 4], eax
mov edi, dword [ebx - 4]
lea eax, [ebx - 0xc]
mov dword [esp + 0xc], eax
lea eax, [edi + edi]
cmp dword [ebx - 0xc], 0
lea ebx, [edi + edi + 4]
cmove ebx, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4e4]
mov dword [esp + 0x14], eax
jno 0x422c1d
jo 0x422c1d
call 0x1b82f98
ja 0x422c22
jbe 0x422c22
call 0x1be2fa3
jge 0x422c27
jl 0x422c27
call 0x1c02faa
jg 0x422c2c
jle 0x422c2c
call 0x8d6660b9
mov ah, 0x3c
mov eax, 0x8d000000
test byte [eax + edi*4], ah
add byte [eax], al
add byte [edi], cl
inc esp
invalid
mov dword [esp], esi
lea esi, [esp + edi + 0xb8]
lea eax, [esp + 0xb8]
cmove esi, eax
lea eax, [edi + 4]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xb8]
push eax
push dword [esp + 0xc]
call fcn.00425b18
add esp, 8
lea eax, [esp + ebx + 0xb8]
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x4f4]
mov edx, dword [ebx + 0x508]
mov edx, dword [edx + 0xc]
jl 0x422c7d
jge 0x422c7d
call 0x8b997dd1
jl 0x422ca7
push eax
push ecx
push edi
mov edi, dword [esp + 0x10]
push esi
mov esi, dword [esp + 0x10]
push dword [esp + 0x24]
push dword [esp + 0x4c]
adc byte [esi - 0x75], dl
je 0x422cac
adc bh, bh
je 0x422cb0
and al, 0xff
je 0x422cb4
dec esp
call edx
mov edx, edi
add esp, 0x18
mov byte [ebx - 0x7b3], 1
je 0x422ca4
jne 0x422ca4
call 0x484191
add byte [ecx + 0x243489d7], cl
mov edi, edx
mov dword [esp], esi
jmp 0x4232bd
add byte [eax], al
mov edi, edx
mov dword [esp], esi
xor al, 0x24
jb 0x422cb3
jae 0x422cb3
call 0x8c3aa042
inc ebx
cld
mov esi, dword [ebx - 8]
jae 0x422cae
mov eax, dword [ebx - 4]
jnp 0x422cbe
jp 0x422cbe
call 0x422eaa
add byte [eax], al
call 0x1c03048
call 0x422cc4
add al, ch
jg 0x422cca
jle 0x422cca
call 0x1b3303e
jo 0x422ccf
jno 0x422ccf
call 0x5066795e
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x70], ecx
mov ecx, 0x20
mov dword [esp + 0x74], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], ecx
mov ecx, dword [ebp + 8]
movzx ecx, word [ecx - 0xd8]
cmp ecx, 0x303
mov dword [esp + 4], edi
jb 0x423c93
ja 0x422d0b
jbe 0x422d0b
call 0x74482592
add esi, dword [ebp + 1]
cmp eax, 5
je 0x422d13
jne 0x422d13
call 0x486671a2
mov eax, dword [esp + 0x48]
cmove eax, dword [esp + 0x44]
jmp 0x423c9c
call 0x422d27
add al, ch
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x540]
test eax, eax
je case.0x422456.82
jae 0x422d3e
jb 0x422d3e
call 0xfbcb3ccd
mov ecx, dword [edi]
mov ebx, edi
mov edi, edx
mov edx, dword [eax]
mov edx, dword [edx + 0xc]
jl 0x422d4e
jge 0x422d4e
call 0x24b72ca3
and byte [eax - 1], dl
shr cl, cl
jno 0x422d62
push ecx
push dword [esp + 0x20]
push eax
call edx
jmp 0x4236cc
add byte [eax], al
je 0x422d60
jne 0x422d60
call 0x23e70ef
inc ebx
clc
mov eax, dword [ebx - 4]
cld
add dword [ebx - 8], eax
jmp case.0x422456.82
mov dword [esp], esi
mov dword [esp + 4], edx
jl 0x422d77
jge 0x422d77
call 0x8a3e7106
inc esp
and al, 0xc
mov eax, dword [ebx - 4]
mov dword [esp + 0xc], eax
mov eax, dword [ebx - 0xc]
mov ecx, dword [ebx - 0x14]
mov dword [esp + 0x40], ecx
mov edx, dword [ebx - 0x10]
xor ecx, ecx
cmp dword [ebx - 8], 0
sete cl
shl ecx, 4
mov esi, dword [ebp + 8]
mov ecx, dword [ecx + esi + 0x4e0]
jp 0x422da6
jnp 0x422da6
call 0x1c13128
jle 0x422dab
jg 0x422dab
call 0x1b83126
ja 0x422db0
jbe 0x422db0
call 0x98c8b23f
add al, 0
add byte [ecx - 0x74d7dbbc], cl
js 0x422dc2
mov eax, dword [esi + eax*4 + 0x498]
mov dword [esp + 0x28], eax
mov edi, dword [eax + 4]
shr edi, 8
and edi, 0x7f
out 0x7f, eax
movzx eax, word [esi - 0xd8]
mov dword [esp + 0x14], 0
cmp eax, 0x301
ja 0x422de6
jl 0x422ddf
jge 0x422ddf
call 0x89466f6e
inc esp
and al, 0x14
mov eax, dword [ecx + 4]
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], ecx
jl 0x422def
jge 0x422def
call 0xc66727e
mov eax, dword [esp + 0xc]
lea esi, [edi + eax]
mov eax, dword [esp + 0x14]
add eax, esi
mov dword [esp + 0x5c], eax
jle 0x422e05
jg 0x422e05
call 0x18667a94
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xb8]
mov dword [esp + 0x10], eax
lea eax, [esp + 0xb8]
push eax
push dword [esp + 0x60]
call fcn.00425b18
add esp, 8
cmp dword [esp + 0x40], 0
je 0x423f53
jo 0x422e38
jno 0x422e38
call 0xb87eb2c9
add byte [eax], al
add byte [ecx - 0x74efdbbc], cl
inc esp
and al, 0xc
lea eax, [esp + edi + 0xb8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xc]
lea eax, [eax + edi*2]
mov edx, dword [esp + 0x14]
lea esi, [edx + esi*2]
jmp 0x423f61
jp 0x422e5b
jnp 0x422e5b
call 0xea3e71ea
or dl, byte [eax + eax]
add byte [edx + 3], dh
jb 0x422e68
mov eax, dword [ebx - 4]
jmp 0x42426d
jb 0x422e68
jae 0x422e68
add eax, ebp
call 0xd43e79f6
jnp 0x422e66
mov cl, byte [ebx - 4]
sar dword [ebx - 8], cl
jmp case.0x422456.82
jg 0x422e78
jle 0x422e78
call 0xd7cb2ee6
push 0
mov edi, edx
call dword [sym.imp.msvcrt.dll_time]
mov edx, edi
add esp, 4
call 0x422e8d
add al, ch
bswap eax
mov ecx, dword [esp + 0x3c]
jmp 0x422fa4
jne 0x422e9e
je 0x422e9e
call 0x8a3e722d
inc esp
and al, 0xc
mov eax, dword [ebx - 4]
mov dword [esp + 0xc], eax
mov dword [esp + 4], edx
mov edi, dword [ebx - 8]
cmp dword [ebx - 0x10], 0
lea eax, [edi + edi]
mov ecx, ebx
lea ebx, [edi + edi + 4]
cmovne ebx, eax
mov edx, dword [ecx - 0xc]
lea eax, [ecx - 0x10]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4e8]
mov dword [esp + 8], eax
jle 0x422ed8
jg 0x422ed8
call 0x1bf3258
jl 0x422edd
jge 0x422edd
call 0x1b83258
ja 0x422ee2
jbe 0x422ee2
call 0x1b8325d
ja 0x422ee7
jbe 0x422ee7
call 0x8d666374
mov ah, 0x3c
mov eax, 0x8d000000
test byte [eax + edi*4], ah
add byte [eax], al
add byte [edi], cl
inc ebp
invalid
mov dword [esp], esi
lea esi, [esp + edi + 0xb8]
lea eax, [esp + 0xb8]
cmovne esi, eax
lea eax, [edi + 4]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xb8]
push eax
push dword [esp + 0x14]
call fcn.00425b18
add esp, 8
lea eax, [esp + ebx + 0xb8]
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x51c]
mov ecx, dword [ecx + 0xc]
jae 0x422f32
jb 0x422f32
call 0xc66a435
push dword [esp + 0xc]
push eax
push edi
mov edi, dword [esp + 0x10]
push esi
mov esi, dword [esp + 0x10]
push dword [esp + 0x18]
push dword [esp + 0x48]
call ecx
mov edx, edi
add esp, 0x18
jae 0x422f55
jb 0x422f55
call 0x484142
add byte [esi + 3], dh
jbe 0x422f5f
jmp 0x42356b
jbe 0x422f5f
ja 0x422f5f
call 0x2a3e72ee
inc ebx
clc
mov eax, dword [ebx - 4]
sub dword [ebx - 8], eax
jmp case.0x422456.82
jle 0x422f6f
jg 0x422f6f
call 0x323a72fe
leave
mov eax, dword [ebx - 8]
xor ecx, ecx
cmp eax, dword [ebx - 4]
setge cl
jmp 0x423ad3
ja 0x422f84
jbe 0x422f84
call 0x44453713
and al, 0x18
mov eax, dword [edi]
add eax, dword [esp + 0x18]
jl 0x422f8f
jge 0x422f8f
call 0x24beb8e3
adc al, 0x89
xlatb
push eax
mov dword [esp + 0x14], edi
mov edi, edx
call sub.msvcrt.dll_strlen
mov edx, edi
add esp, 4
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
jmp 0x422599
jge 0x422fb0
jl 0x422fb0
call 0xe32b4fab
cmc
invalid
neg dword [edi]
jmp 0x422599
jo 0x422fbc
jno 0x422fbc
call 0xd43e7b4a
arpl ax, di
mov cl, byte [ebx - 4]
shl dword [ebx - 8], cl
jmp case.0x422456.82
call 0x422fcd
add al, ch
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x540]
test eax, eax
je 0x422599
jb 0x422fe4
jae 0x422fe4
call 0x49cd3873
adc al, 0x73
add esi, dword [edx + 1]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x14]
jae 0x422fee
jb 0x422fee
call 0x49fddb
add byte [edx + 3], bh
jp 0x422ff8
jmp 0x4237c0
jp 0x422ff8
jnp 0x422ff8
add eax, ebp
call 0x843e7387
jnp 0x422ff6
mov eax, dword [ebx - 4]
cmp dword [ebx - 8], 0
jbe 0x423004
add byte [esi + 3], dh
ja 0x423004
call 0x1b7337c
je 0x423009
jne 0x423009
call 0x1b83384
ja 0x42300e
jbe 0x42300e
call 0x1ba338b
jns 0x423013
js 0x423013
call 0x1b33387
jo 0x423018
jno 0x423018
call 0x46684a5
mov dword [esp + 4], edx
mov dword [esp], esi
mov dword [esp + 8], ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x20], eax
je 0x423fbb
jno 0x423036
jo 0x423036
call 0xf4a8dc5
mov dh, 0x93
pop esp
invalid
mov ebx, dword [ebp + 8]
movzx edx, byte [ebx - 0xa4]
movzx eax, byte [ebx - 0x1e]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x14], eax
jmp 0x423fec
jg 0x42305a
jle 0x42305a
call 0x323a73e9
leave
mov eax, dword [ebx - 8]
xor ecx, ecx
cmp eax, dword [ebx - 4]
setg cl
jmp 0x423ad3
mov edi, edx
call 0x423072
add al, ch
mov eax, dword [ebp + 8]
movzx edx, byte [eax + 0x545]
test edx, edx
mov dword [esp], esi
mov dword [esp + 8], ebx
je 0x424198
jns 0x423091
js 0x423091
call 0x1b9340b
jbe 0x423096
ja 0x423096
call 0x24667d25
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x1c]
push ebx
call fcn.00431f12
add esp, 4
jmp 0x4241d0
mov edi, edx
mov dword [esp + 8], ebx
jnp 0x4230b7
jp 0x4230b7
call 0x1bc3436
jnp 0x4230bc
jp 0x4230bc
call 0x8b4a764b
nop
adc byte [ebx], al
add byte [eax], al
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x310]
sub edx, dword [eax + 0x314]
je 0x4230e0
jg 0x4230d2
jle 0x4230d2
call 0x1b53448
jb 0x4230d7
jae 0x4230d7
call 0x18667d66
mov ecx, dword [esp + 0x18]
call fcn.00425629
jle 0x4230e5
jg 0x4230e5
call 0x8b4a8e74
add dword [eax - 8], 0xffffffff
invalid
mov ebx, dword [ebp + 8]
mov eax, dword [ebx - 0x7c0]
cmp eax, dword [ebx - 0x7bc]
je 0x423111
jae 0x4230fb
jb 0x4230fb
call 0xf88ab43a
invalid
cmp eax, dword [ebx - 0x7b8]
je 0x423111
ja 0x423108
jbe 0x423108
call 0x18667d97
mov ecx, dword [esp + 0x18]
call fcn.00425675
je 0x423116
jne 0x423116
call 0xf88eb4a4
invalid
mov al, byte [ebx - 0x7b4]
and al, 0xfe
cmp al, 2
jne 0x423d24
jge 0x42312b
jl 0x42312b
call 0xf882bcba
invalid
mov ecx, dword [ebx - 0x7c0]
mov edx, dword [ebx - 0x7bc]
xor eax, eax
sub edx, ecx
mov dword [ebx + 0x31c], edx
mov edx, edi
je 0x423d37
jae 0x42314e
jb 0x42314e
call 0xf866bc55
invalid
add ecx, dword [ebx - 0x7dc]
mov eax, ecx
jmp 0x423d37
mov dword [esp + 4], edx
jb 0x423164
jae 0x423164
call 0x44cb38f3
and al, 0x14
mov eax, dword [edi]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x18]
jl 0x42317d
jge 0x42317d
call 0xff9231eb
rol dword [ebx + 0x508b08c4], 1
or byte [ecx + 0x3c], bh
push 0
push eax
call ecx
add esp, 8
mov edx, dword [eax + 8]
mov ecx, 0x3c
test edx, edx
je 0x4245bb
add eax, 4
jae 0x42319d
jb 0x42319d
call 0x2066762a
mov dword [esp + 0x20], eax
mov eax, dword [eax]
jle 0x4231a8
jg 0x4231a8
call 0xf426a2c
test dword [edx + 0x7900000b], edi
add edi, dword [eax + 1]
cmp byte [eax], 0
jne 0x423d6b
jns 0x4231b6
js 0x4231b6
call 0xe9b77bfa
inc eax
dec edx
jne 0x4231a3
jmp 0x4245bb
mov edi, edx
call 0x4231c7
add al, ch
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x18]
jb 0x4231db
jae 0x4231db
call 0xb866c66c
add byte [eax], al
add byte [edx + 0x50], dl
lea edx, [esp + 0xb8]
push edx
push eax
call ecx
add esp, 8
test eax, eax
je 0x42421d
jg 0x4231f6
jle 0x4231f6
call 0xb42e809
test byte [eax + edi*4], ah
add byte [eax], al
add cl, ch
sbb dl, byte [eax]
add byte [eax], al
movzx eax, byte [eax]
or eax, dword [esp + 0xb8]
jmp 0x42421f
jne 0x42320a
je 0x42320a
call 0x53ce0297
clc
mov eax, edx
mov edx, dword [ebx - 8]
mov dword [esp + 4], eax
mov edi, dword [ebx - 4]
lea eax, [ebx - 0xc]
mov dword [esp + 0xc], eax
lea eax, [edi + edi]
cmp dword [ebx - 0xc], 0
lea ebx, [edi + edi + 4]
cmovne ebx, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4e4]
mov dword [esp + 0x14], eax
jp 0x42323d
jnp 0x42323d
call 0x1b835b8
ja 0x423242
jbe 0x423242
call 0x1be35c3
jge 0x423247
jl 0x423247
call 0x1b735bf
je 0x42324c
jne 0x42324c
call 0x8d6666d9
mov ah, 0x3c
mov eax, 0x8d000000
test byte [eax + edi*4], ah
add byte [eax], al
add byte [edi], cl
inc ebp
invalid
mov dword [esp], esi
lea esi, [esp + edi + 0xb8]
lea eax, [esp + 0xb8]
cmovne esi, eax
lea eax, [edi + 4]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xb8]
push eax
push dword [esp + 0xc]
call fcn.00425b18
add esp, 8
lea eax, [esp + ebx + 0xb8]
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x4f4]
mov edx, dword [ebx + 0x50c]
mov edx, dword [edx + 0xc]
jns 0x42329d
js 0x42329d
call 0x8b9983f1
jl 0x4232c7
push eax
push ecx
push edi
mov edi, dword [esp + 0x10]
push esi
mov esi, dword [esp + 0x10]
push dword [esp + 0x24]
push dword [esp + 0x48]
adc byte [esi - 0x75], dl
je 0x4232cc
adc bh, bh
je 0x4232d0
and al, 0xff
je 0x4232d4
dec eax
call edx
mov edx, edi
add esp, 0x18
js 0x4232bd
jns 0x4232bd
call 0xc668f4c
mov ebx, dword [esp + 0xc]
jmp 0x422599
mov dword [esp + 4], edx
push esp
and al, 4
jae 0x4232cf
jb 0x4232cf
call 0x834a885e
mov edx, 0x318
mov edx, dword [ebp + 8]
cmp dword [edx + 0x318], 0
push ebp
or byte [ebx + 0x318ba], al
add byte [eax], al
sbb byte [ebx], al
add byte [eax], al
add byte [edi], cl
test byte [esi + 0xf], dl
add byte [eax], al
je 0x424235
mov edi, ebx
mov dword [esp], esi
jle 0x4232e9
jg 0x4232e9
call 0x34eb578
add byte [eax], al
mov eax, dword [edx + 0x30c]
lea ecx, [eax + 1]
mov dword [edx + 0x30c], ecx
mov esi, edx
movzx ebx, byte [eax]
mov byte [esp + 0xb8], bl
cmp byte [edx - 0x7b1], 0x16
jne 0x423327
jg 0x423312
jle 0x423312
call 0xb866c7a3
add byte [eax], al
add byte [ebx + 0x6a24244c], cl
add eax, ebp
pop ebx
ljmp 0x7c04
lea edx, [esp + 0xb8]
mov ecx, dword [esp + 0x24]
push 1
call fcn.00431d7f
add esp, 4
jl 0x42332c
jge 0x42332c
call 0xfbcb52b9
mov dword [edi], ebx
mov ebx, edi
add ebx, 4
dec dword [esi + 0x318]
jl 0x42333e
jge 0x42333e
call 0x4ac22b
add byte [edx + 3], bh
jp 0x423348
jmp 0x423bd1
jp 0x423348
jnp 0x423348
call 0x8c3e76d7
dec ebx
clc
mov eax, dword [ebx - 4]
mov ecx, dword [ebx - 8]
add ecx, dword [esp + 0x18]
add ebx, 0xfffffff8
je 0x42335a
jne 0x42335a
call 0x754184ae
and al, 0x34
push eax
push ecx
push dword [esp + 0x34]
mov edi, edx
call fcn.0042dfb1
jmp 0x4236cc
jge 0x423371
jl 0x423371
call 0xc74a7900
sbb byte [eax], 3
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov eax, dword [ebp + 8]
mov dword [eax + 0x318], 0
jmp 0x422599
jb 0x423388
jae 0x423388
call 0x4dcd353c
or byte [ebx + 0x318b9], al
add byte [eax], al
mov al, 1
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x318], 0
jne 0x4233e5
mov edi, edx
ja 0x42339d
jbe 0x42339d
call 0x1b33711
jo 0x4233a2
jno 0x4233a2
call 0xf4a8931
mov dh, 0x8a
dec esp
clc
invalid
mov edx, dword [ebp + 8]
movzx ecx, byte [edx - 0x7b4]
xor eax, eax
inc eax
or ecx, 2
cmp ecx, 3
jne 0x4233d9
je 0x4233bc
jne 0x4233bc
call 0xf87eee43
invalid
cmp dword [edx - 0x7c4], 0
je 0x4233d9
jo 0x4233ca
jno 0x4233ca
call 0x4dcdf3ff
or byte [ebx - 0x7cb47], al
inc dword [0x78c0920f]
add edi, dword [ecx + 1]
xor eax, eax
mov ecx, dword [ebp + 8]
cmp dword [ecx - 0x7cc], 5
setb al
js 0x4233de
jns 0x4233de
call 0x9451f467
ror byte [ecx + 0x710370fa], 1
test eax, eax
sete al
mov edx, edi
jo 0x4233ea
jno 0x4233ea
call 0xea02e9fd
jnp 0x4233fe
movzx eax, al
jmp 0x42426d
add byte [eax], al
mov eax, edi
mov dword [esp + 8], ebx
mov dword [esp], esi
jno 0x423400
jo 0x423400
add eax, ebp
call 0x8a4aa98f
pop ds
mov esi, dword [ebp + 8]
mov bl, byte [edi]
mov byte [esp + 0xb8], bl
cmp dword [esi + 0x31c], 0
je 0x42424c
jo 0x42341e
jno 0x42341e
call 0xf892f2a2
invalid
cmp byte [esi - 0x7b0], 0x16
jne 0x423449
jl 0x42342c
jge 0x42342c
call 0x46688b9
mov dword [esp + 4], edx
lea edx, [esp + 0xb8]
mov ecx, dword [esp + 0x24]
push 1
call fcn.00431d7f
mov edx, dword [esp + 8]
add esp, 4
jg 0x42344e
jle 0x42344e
call 0x352badd
add byte [eax], al
mov eax, dword [esi + 0x310]
lea ecx, [eax + 1]
mov dword [esi + 0x310], ecx
mov byte [eax], bl
dec dword [esi + 0x31c]
xor eax, eax
dec eax
jmp 0x42424e
je 0x423472
jne 0x423472
call 0xea3a7801
or eax, 0x37c0000
jl 0x42347f
mov eax, dword [ebx - 8]
jmp 0x42426d
jl 0x42347f
jge 0x42347f
call 0x4dcd3c0e
or byte [ebx + 0x4b489], cl
add byte [ecx - 0x74287605], cl
adc dword [ebx - 0x3f7afbae], ecx
mov eax, dword [edi]
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x4b4]
mov ebx, edi
mov edi, edx
mov edx, dword [ecx]
mov edx, dword [edx + 4]
test eax, eax
cmovne eax, dword [esp + 0x68]
ja 0x42349f
jbe 0x42349f
call 0x632b85f3
push es
add byte [eax], al
push eax
push ecx
jmp 0x423b08
jo 0x4234ab
jno 0x4234ab
call 0x8a3e783a
inc esp
and al, 0xc
mov eax, dword [ebx - 4]
mov dword [esp + 0xc], eax
mov dword [esp + 4], edx
mov edi, dword [ebx - 8]
cmp dword [ebx - 0x10], 0
lea eax, [edi + edi]
mov ecx, ebx
lea ebx, [edi + edi + 4]
cmove ebx, eax
mov edx, dword [ecx - 0xc]
lea eax, [ecx - 0x10]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4e8]
mov dword [esp + 8], eax
jnp 0x4234e5
jp 0x4234e5
call 0x1bc3864
jnp 0x4234ea
jp 0x4234ea
call 0x1b53860
jb 0x4234ef
jae 0x4234ef
call 0x1b23864
jno 0x4234f4
jo 0x4234f4
call 0x8d666981
mov ah, 0x3c
mov eax, 0x8d000000
test byte [eax + edi*4], ah
add byte [eax], al
add byte [edi], cl
inc esp
invalid
mov dword [esp], esi
lea esi, [esp + edi + 0xb8]
lea eax, [esp + 0xb8]
cmove esi, eax
lea eax, [edi + 4]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0xb8]
push eax
push dword [esp + 0x14]
call fcn.00425b18
add esp, 8
lea eax, [esp + ebx + 0xb8]
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x518]
mov ecx, dword [ecx + 0xc]
jp 0x42353f
jnp 0x42353f
call 0xc66aa42
push dword [esp + 0xc]
push eax
push edi
mov edi, dword [esp + 0x10]
push esi
mov esi, dword [esp + 0x10]
push dword [esp + 0x18]
push dword [esp + 0x4c]
call ecx
mov edx, edi
add esp, 0x18
mov byte [ebx - 0x7b3], 1
call 0x42356a
add al, ch
mov ebx, dword [esp + 0x14]
jmp 0x422599
jbe 0x423579
ja 0x423579
call 0x8b4a7b08
and byte [eax], 5
add byte [eax], al
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x520]
test eax, eax
je 0x424266
js 0x42358f
jns 0x42358f
call 0xd32b361e
or al, 0
add byte [ecx - 0x76f7dba4], cl
mov dword [esp + 8], ebx
mov dword [esp], esi
mov eax, dword [eax]
jmp 0x424268
mov dword [esp + 8], ebx
mov dword [esp], esi
mov dword [esp + 4], edx
xor eax, eax
mov ebx, 0xfffffffb
xor edx, edx
jb 0x4235af
jae 0x4235af
call 0x8b4a833e
mov ah, 0x99
mov ah, 4
add byte [eax], al
mov ecx, dword [ebp + 8]
mov esi, dword [ecx + ebx*4 + 0x4b4]
mov ecx, ebx
add cl, 7
xor edi, edi
inc edi
shl edi, cl
xor ecx, ecx
test esi, esi
cmove edi, esi
setne cl
add edx, ecx
or eax, edi
inc ebx
jne 0x4235aa
jns 0x4235d9
js 0x4235d9
call 0x8669268
mov ebx, dword [esp + 8]
mov dword [ebx], eax
mov dword [ebx + 4], edx
add ebx, 8
jmp 0x42455d
js 0x4235ef
jns 0x4235ef
call 0x4dcdf624
or byte [ebx], bh
sbb dword [eax], 0xe9000003
mov al, byte [0xe8000000]
call 0x423605
xor eax, eax
mov ecx, dword [ebp + 8]
cmp eax, dword [ecx + 0x318]
jmp 0x42369f
call 0x423605
add al, ch
mov eax, dword [ebx - 8]
xor ecx, ecx
cmp eax, dword [ebx - 4]
setl cl
jmp 0x423ad3
jno 0x42361b
jo 0x42361b
call 0x8b3e79aa
dec ebx
clc
mov eax, dword [ebx - 4]
mov cl, byte [ebx - 8]
add ebx, 0xfffffff8
mov edi, edx
mov edx, dword [esp + 0x18]
mov byte [edx + eax], cl
jmp 0x424216
call 0x423638
add al, ch
mov dword [esp + 8], ebx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x4c4]
ja 0x42364b
jbe 0x42364b
call 0xbe666ad8
add byte [edx], al
add byte [eax], al
mov dword [esp], esi
mov esi, 0x200
cmp eax, esi
cmovb esi, eax
mov eax, dword [ebx + 0x4c0]
jge 0x423663
jl 0x423663
call 0x754186bd
and al, 0x24
push esi
push eax
push dword [esp + 0x24]
mov edi, edx
call fcn.0040307b
mov edx, edi
add esp, 0xc
add dword [ebx + 0x4c0], esi
sub dword [ebx + 0x4c4], esi
mov ebx, dword [esp + 8]
mov dword [ebx], esi
mov esi, dword [esp]
jmp 0x42426f
jne 0x423694
je 0x423694
call 0x4dcdf6c9
or byte [ebx], bh
sbb dword [ebx + eax], 0xc0190000
xor eax, eax
mov ecx, dword [ebp + 8]
cmp eax, dword [ecx + 0x31c]
sbb eax, eax
jmp 0x42426d
jl 0x4236ab
jge 0x4236ab
call 0x8b4a7c3a
xor byte [esp + eax + 0x88b0000], 0x89
sti
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4b4]
mov ecx, dword [eax]
mov ebx, edi
mov edi, edx
mov edx, dword [ebx]
mov ecx, dword [ecx + 0xc]
jbe 0x4236c4
ja 0x4236c4
call 0x24b7361a
and byte [eax - 1], dl
ror dword [ecx + 0xcc483fa], 1
push edx
push dword [esp + 0x20]
push eax
call ecx
mov edx, edi
add esp, 0xc
jmp 0x422599
jb 0x4236db
jae 0x4236db
call 0x2466836a
mov ecx, dword [esp + 0x24]
mov edi, edx
call fcn.00431cb0
jmp 0x424216
jno 0x4236f0
jo 0x4236f0
call 0x4ccd3e7f
and al, 0x18
mov eax, dword [edi]
mov ecx, dword [esp + 0x18]
movzx eax, byte [ecx + eax]
mov dword [edi], eax
jmp 0x422599
jl 0x423706
jge 0x423706
call 0x5bce1693
cld
mov edi, ebx
mov ebx, dword [ebx - 4]
mov dword [esp], esi
lea eax, [edi - 8]
mov dword [esp + 0xc], eax
mov ecx, dword [edi - 8]
mov eax, dword [esp + 0x18]
add ecx, eax
mov esi, edx
mov edx, dword [edi - 0xc]
add edx, eax
jge 0x42372a
jl 0x42372a
call 0xe8948881
movsd dword es:[edi], dword [esi]
stc
std
dec dword [ecx + 0xcc483f2]
push ebx
push ecx
push edx
call fcn.004030d7
mov edx, esi
add esp, 0xc
xor ecx, ecx
cmp eax, 1
sbb ecx, ecx
mov dword [edi - 0xc], ecx
mov ebx, dword [esp + 0xc]
jmp 0x424561
jl 0x42374f
jge 0x42374f
call 0x8b4a7cde
add byte [eax + 5], 0
add byte [ebp + 0x39840fc0], al
out dx, al
invalid
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x540]
test eax, eax
je 0x422599
jne 0x423765
je 0x423765
call 0x49cd3ff4
adc byte [edi + 3], dh
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x10]
ja 0x42376f
jbe 0x42376f
call 0x3b6875e
jmp 0x4237c0
je 0x423776
jne 0x423776
call 0x8b4a7d05
xor byte [esp + eax + 0x88b0000], 0x8b
dec ecx
or byte [ecx - 0x74287605], cl
adc edi, dword [ebx + 3]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 8]
mov ebx, edi
mov edi, edx
mov edx, dword [ebx]
jnp 0x42378f
jp 0x42378f
call 0xd24187e5
push edx
push eax
call ecx
jmp 0x423b0a
jl 0x42379d
jge 0x42379d
call 0x223e7b2c
inc ebx
clc
mov eax, dword [ebx - 4]
and dword [ebx - 8], eax
jmp case.0x422456.82
jbe 0x4237ad
ja 0x4237ad
call 0x8b4a7d3c
xor byte [esp + eax + 0x88b0000], 0x8b
dec ecx
adc byte [ebx + 3], dh
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x10]
jae 0x4237c0
jb 0x4237c0
call 0x19c114
ror dword [ecx + 0x4c483fa], 1
push eax
mov edi, edx
call ecx
mov edx, edi
add esp, 4
jmp 0x422599
mov dword [esp], esi
mov dword [esp + 4], edx
jg 0x4237db
jle 0x4237db
call 0x8a3e7b6a
inc esp
and al, 0x10
mov eax, dword [ebx - 4]
mov dword [esp + 0x10], eax
mov eax, dword [ebx - 0xc]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov eax, dword [ebx - 8]
mov dword [esp + 0x20], eax
jnp 0x4237f9
jp 0x4237f9
call 0x1bd3b77
jp 0x4237fe
jnp 0x4237fe
call 0x1be3b7f
jge 0x423803
jl 0x423803
call 0x8b4a9592
xor dword [esp + eax + 0x88b0000], 0xffffff8b
dec ecx
sbb byte [esi + 3], bh
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x18]
jle 0x423816
jg 0x423816
call 0x509a374b
xor edi, edi
push edi
push eax
call ecx
add esp, 8
mov dword [esp + 0x14], eax
jle 0x423828
jg 0x423828
call 0x1ba3ba5
jns 0x42382d
js 0x42382d
call 0xb866ecbe
add byte [eax], al
add byte [eax - 0x78], ch
add dword [eax], eax
add byte [edi + 0x56], dl
lea esi, [esp + 0xb8]
push 0x188
push edi
push esi
call fcn.00403060
add esp, 0xc
jbe 0x423848
ja 0x423848
call 0x6c6684d7
mov ecx, dword [esp + 0x6c]
movsd xmm0, qword [ecx + 0x10]
lea eax, [esp + 0xc8]
movsd qword [eax + 0x170], xmm0
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
movsd qword [eax + 0x168], xmm1
movsd qword [eax + 0x160], xmm0
jbe 0x42387e
ja 0x42387e
call 0x2c2b2a0b
in al, 0
add byte [ebp + 3], bh
invalid
mov ecx, esi
call fcn.00431cb0
jge 0x42388a
invalid
jl 0x42388a
call fcn.0042594d
add byte [ecx + 0x24548bf1], cl
cmp al, 0x57
mov edi, 0x20
mov ecx, esi
mov edx, dword [esp + 0x3c]
push edi
call fcn.00431d7f
add esp, 4
ja 0x4238a3
jbe 0x4238a3
call 0x54ce2a30
and al, 0x50
mov ecx, esi
mov edx, dword [esp + 0x50]
push edi
mov edi, dword [esp + 0x10]
call fcn.00431d7f
add esp, 4
lea edx, [esp + 0x30]
mov word [edx], 3
mov al, byte [ebx - 0xa4]
mov byte [edx + 2], al
mov al, byte [ebx - 0x1e]
mov byte [edx + 3], al
jg 0x4238d3
jle 0x4238d3
call 0x4ad2a60
mov ecx, esi
push 4
call fcn.00431d7f
add esp, 4
movzx eax, byte [ebx - 0x1e]
jae 0x4238e8
jb 0x4238e8
call 0x54ce2a75
and al, 0x58
mov ecx, esi
mov edx, dword [esp + 0x58]
push eax
call fcn.00431d7f
add esp, 4
test edi, edi
je 0x424277
jbe 0x423904
ja 0x423904
call 0x70667d95
lea eax, [esp + 0x70]
lea ecx, [esp + 0xb8]
mov edx, edi
push eax
call fcn.00431f12
add esp, 4
test eax, eax
je 0x4244e0
mov esi, eax
jg 0x423929
jle 0x423929
call 0x2066b5b0
add byte [edi], cl
test byte [edi + 0x7700000b], dh
add esi, dword [esi + 1]
cmp dword [esp + 0x20], 0
je 0x4244eb
ja 0x423939
jbe 0x423939
call 0x18ff3dc8
pop edx
inc eax
add byte [ecx - 0x74f3dbbc], cl
push esp
and al, 0x1c
mov eax, dword [edi*4 + 0x405a18]
mov dword [esp + 0xc], eax
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 8]
jmp 0x4242f3
mov ecx, edx
mov dword [esp], esi
jae 0x42395b
jb 0x42395b
call 0x8c3aacea
push ebx
cld
mov esi, dword [ebx - 8]
mov edx, dword [ebx - 4]
jne 0x423966
je 0x423966
call 0x423b52
add byte [eax], al
call 0x1bf3ced
call 0x42396c
add al, ch
jl 0x423972
jge 0x423972
call 0x1c13cf4
jle 0x423977
jg 0x423977
call 0xf4a7f06
mov bh, 0x80
sub bh, bh
invalid
mov eax, dword [ebp + 8]
movzx eax, word [eax - 0xd8]
cmp eax, 0x303
mov dword [esp + 4], ecx
jb 0x423d4d
call 0x423996
add al, ch
cmp edx, 5
jne 0x424375
ja 0x4239a5
jbe 0x4239a5
call 0x44667e34
mov eax, dword [esp + 0x44]
jmp 0x42437e
jge 0x4239b3
jl 0x4239b3
call 0x8b4a9742
add dword [eax + 5], 0
add byte [ebp - 0x697bf040], al
or dword [eax], eax
add al, ch
add dword [eax], eax
add byte [eax], al
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x540]
test eax, eax
je 0x42435a
call 0x4239ca
add al, ch
mov ecx, dword [edi]
jbe 0x4239d2
ja 0x4239d2
call 0x1066b65f
mov dword [esp + 0x10], edi
mov edi, edx
mov edx, dword [eax]
mov edx, dword [edx + 0x18]
jg 0x4239e2
jle 0x4239e2
call 0x8d666e6f
mov ah, 0x24
mov eax, 0x56000000
mov dword [esp], esi
lea esi, [esp + 0xb8]
push esi
push ecx
push dword [esp + 0x20]
push eax
call edx
mov edx, edi
add esp, 0x10
mov al, byte [esi]
mov byte [ebx + 0x544], al
mov al, byte [esi + 4]
mov byte [ebx + 0x545], al
mov eax, dword [esi + 8]
mov dword [ebx + 0x4b8], eax
mov eax, dword [esi + 0xc]
mov esi, dword [esp]
mov dword [ebx + 0x4bc], eax
jb 0x423a25
jae 0x423a25
call 0x106696b4
mov ebx, dword [esp + 0x10]
jmp 0x422599
jge 0x423a33
jl 0x423a33
call 0x8c3a7dc2
dec ebx
cld
mov eax, dword [ebx - 8]
mov ecx, dword [ebx - 4]
add ebx, 0xfffffff8
mov edi, edx
mov edx, dword [esp + 0x18]
mov dword [edx + ecx], eax
jmp 0x424216
jge 0x423a4f
jl 0x423a4f
call 0x103e7dde
mov bh, 0x4b
clc
mov eax, dword [ebx - 4]
movzx ecx, word [ebx - 8]
add ebx, 0xfffffff8
mov edi, edx
mov edx, dword [esp + 0x18]
mov word [edx + eax], cx
jmp 0x424216
js 0x423a6d
jns 0x423a6d
call 0x4dcd41fc
or byte [ebx + 0x4c889], cl
add byte [ecx - 0x76f7dba4], cl
mov esi, dword [ecx + eax*4]
mov eax, dword [edi]
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x4c8]
mov dword [esp + 8], ebx
mov ebx, esi
mov esi, dword [ecx + eax*4]
jle 0x423a86
jg 0x423a86
call 0x24bec3e0
adc al, 0x89
push esp
and al, 8
push esi
mov dword [esp + 0x14], edi
mov dword [esp + 8], edx
call sub.msvcrt.dll_strlen
add esp, 4
mov edi, eax
call 0x423a9f
add al, ch
push eax
push esi
mov esi, ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 0x24]
call fcn.0040307b
mov edx, dword [esp + 0x10]
add esp, 0xc
mov eax, dword [esp + 0x10]
mov dword [eax], edi
jmp 0x422599
ja 0x423ac8
jbe 0x423ac8
call 0x323a7e57
leave
mov eax, dword [ebx - 8]
xor ecx, ecx
cmp eax, dword [ebx - 4]
sete cl
neg ecx
mov dword [ebx - 8], ecx
mov ebx, edi
jmp 0x422599
js 0x423ae4
jns 0x423ae4
call 0x8b4a8073
add byte [eax + 5], 0
add byte [ebp + 0x75e774c0], al
add esi, dword [ecx + eax - 0x18]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x540]
test eax, eax
je case.0x422456.82
jne 0x423af6
je 0x423af6
call 0xfbcb4a85
mov ecx, dword [edi]
mov ebx, edi
mov edi, edx
mov edx, dword [eax]
mov edx, dword [edx + 8]
jge 0x423b06
jl 0x423b06
call 0xd3418b5b
push ecx
push eax
call edx
mov edx, edi
add esp, 8
jmp 0x422599
mov dword [esp + 4], edx
mov dword [esp], esi
jge 0x423b20
jl 0x423b20
call 0x44cb42af
and al, 0xc
mov eax, dword [edi]
mov dword [esp + 0xc], eax
ja 0x423b2b
jbe 0x423b2b
call 0x423d17
add byte [eax], al
call 0x8b4a98c1
xor dword [esp + eax + 0x88b0000], 0xffffff8b
dec ecx
sbb byte [eax + 3], bh
call 0x423b31
add al, ch
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x18]
js 0x423b45
jns 0x423b45
call 0xff923bb3
rol dword [ebx + 0x488b08c4], 1
or al, 0x89
dec esp
and al, 0x70
push 0
push eax
call ecx
add esp, 8
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x70], ecx
cmp ecx, 0x85
ja 0x424627
jp 0x423b65
jnp 0x423b65
call 0x7e4a7bf4
add edi, dword [edi + 1]
mov eax, dword [eax + 8]
jle 0x423b6d
jg 0x423b6d
call 0xb866effe
add byte [eax], al
add byte [ecx + 0x50], dl
lea esi, [esp + 0xb8]
push ecx
push eax
push esi
call fcn.0040307b
add esp, 0xc
mov eax, dword [ebx + 0x540]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x1c]
jbe 0x423b8f
ja 0x423b8f
call 0x70669020
lea edx, [esp + 0x70]
push edx
push esi
push eax
call ecx
add esp, 0xc
test eax, eax
je 0x424627
jb 0x423ba8
jae 0x423ba8
call 0x70668037
mov eax, dword [esp + 0x70]
jo 0x423bb1
jno 0x423bb1
call 0x18668840
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0xc]
push eax
push esi
call fcn.00425a70
add esp, 8
jle 0x423bc8
jg 0x423bc8
call 0x423db4
add byte [eax], al
call 0x34ce375c
and al, 0xe9
push 6
add byte [eax], al
call 0x423bce
add al, ch
mov ebx, edi
mov esi, dword [esp]
jmp 0x424243
mov edi, edx
mov dword [esp], esi
jae 0x423be3
jb 0x423be3
call 0x8c3aaf72
inc ebx
cld
mov esi, dword [ebx - 8]
mov eax, dword [ebx - 4]
jg 0x423bee
jle 0x423bee
call 0x1c13f70
jle 0x423bf3
jg 0x423bf3
call 0x1bc3f72
jnp 0x423bf8
jp 0x423bf8
call 0x1be3f79
jge 0x423bfd
jl 0x423bfd
call 0x5066888c
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x70], ecx
mov ecx, 0x20
mov dword [esp + 0x74], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], ecx
mov ecx, dword [ebp + 8]
movzx ecx, word [ecx - 0xd8]
cmp ecx, 0x303
mov dword [esp + 4], edi
jb 0x423d5b
jae 0x423c39
jb 0x423c39
call 0xf4834c0
test dword [ebx], eax
or byte [eax], al
add byte [eax + 3], bh
cmp eax, 5
jne 0x424445
js 0x423c47
jns 0x423c47
call 0x446680d6
mov eax, dword [esp + 0x44]
jmp 0x42444e
ja 0x423c55
jbe 0x423c55
call 0xc3c53fe2
add al, 0xe9
mov bh, 5
add byte [eax], al
mov dword [ebx], eax
add ebx, 4
jmp 0x424216
jae 0x423c64
jb 0x423c64
call 0x22a4b53
add byte [eax], al
add byte [eax], al
call 0xc9c747fc
jmp 0x423c74
call 0x423c6c
add al, ch
mov ecx, dword [ebx]
test ecx, ecx
cmove eax, ecx
lea esi, [esi + eax + 1]
jmp 0x424216
ja 0x423c82
jbe 0x423c82
call 0x3bc605b7
add byte [edi], cl
inc esp
enter 0x748d, 0xe
add ecx, ebp
add dword [0x3790000], 0x78
add eax, ebp
xor ecx, ecx
cmp dword [ebx], 0
cmove ecx, eax
lea esi, [esi + ecx + 1]
jmp 0x424216
jns 0x423c98
js 0x423c98
call 0x4c668127
mov eax, dword [esp + 0x4c]
add ebx, 0xfffffff8
jno 0x423ca4
jo 0x423ca4
call 0x3bb3d33
mov eax, dword [eax]
jns 0x423cab
js 0x423cab
call 0x7066893c
lea ecx, [esp + 0x70]
lea edi, [esp + 0xb8]
push ecx
push 2
push 0x405abe
push 0x30
push dword [esp + 0x64]
push 0x58
push edi
call eax
add esp, 0x1c
call 0x423cd2
add al, ch
test esi, esi
lea eax, [esp + 0xd8]
cmove edi, eax
lea eax, [esp + 0xf8]
lea ecx, [esp + 0x104]
cmove eax, ecx
mov esi, dword [ebp + 8]
mov ecx, dword [esi + 0x514]
mov ecx, dword [ecx + 0xc]
mov edx, dword [esi + 0x4f8]
mov esi, dword [esi + 0x4fc]
jg 0x423d0d
jle 0x423d0d
call 0x52989461
push eax
push edi
push esi
push edx
push dword [esp + 0x44]
call ecx
add esp, 0x14
jnp 0x423d1f
jp 0x423d1f
call 0x4a770c
add byte [eax + 3], dh
jmp 0x42455d
jo 0x423d29
jno 0x423d29
call 0x35ec0f4
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov dword [ebx + 0x31c], 0
xor eax, eax
mov edx, edi
ja 0x423d3c
jbe 0x423d3c
call 0x352c0c9
add byte [eax], al
mov dword [ebx + 0x310], eax
mov dword [ebx + 0x314], eax
jmp 0x422595
jo 0x423d52
jno 0x423d52
call 0x4c6681e1
mov eax, dword [esp + 0x4c]
jmp 0x42437e
call 0x423d61
add al, ch
mov eax, dword [esp + 0x4c]
jmp 0x42444e
jno 0x423d70
jo 0x423d70
call 0xf7e37f7
add byte [edx + 8], 0
add byte [edi + 3], bh
cmp edx, 0x3b
jb 0x4245bb
jg 0x423d7e
jle 0x423d7e
call fcn.0042553b
add byte [ecx + 0x200fa], al
add byte [edi], cl
xchg dword [eax + ecx], ebp
add byte [eax], al
mov ecx, 0x17
cmp edx, 0x200
ja 0x4245bb
mov dword [esp + 0x10], edi
mov dword [esp + 8], ebx
mov dword [esp], esi
lea eax, [edx - 0x31]
mov dword [esp + 0xc], eax
call 0x423da7
add al, ch
mov ebx, dword [ebp + 8]
movzx eax, word [ebx - 0x29e]
rol ax, 8
lea esi, [ebx + edx + 0xdc]
mov word [esi], ax
lea eax, [ebx + edx + 0xde]
mov dword [esp + 0x28], eax
ja 0x423dd0
jbe 0x423dd0
call 0xff926c3e
je 0x423dfa
push 0x2e
push eax
push dword [esp + 0x34]
mov edi, edx
xor al, 0x89
xlatb
call fcn.0042dfb1
add esp, 0xc
jae 0x423de6
jb 0x423de6
call 0x18668a75
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push 0x30
push esi
call fcn.00425a70
add esp, 8
mov word [ebx + 0x10c], 0x200
mov eax, dword [esp + 0x28]
mov dword [ebx + 0x10c], 0x448b0200
and al, 0x28
mov byte [eax - 3], 0
mov dword [esp + 0x14], edi
lea eax, [edi - 0x33]
je 0x423e16
jne 0x423e16
call 0x24b73d6a
push 0x342474ff
push eax
push dword [esp + 0x68]
push dword [esp + 0x34]
call fcn.0042dfb1
add esp, 0xc
mov esi, 2
add al, byte [eax]
add byte [eax], al
add al, byte [eax]
add byte [eax], al
jo 0x423e31
jno 0x423e31
call 0x186682c0
mov eax, dword [esp + 0x18]
cmp byte [eax + esi + 0x8f0], 0
mov edi, dword [esp + 0x2c]
jne 0x423e66
mov eax, dword [esp + 0x18]
lea ebx, [eax + esi + 0x8f0]
call 0x423e54
add al, ch
push 1
push ebx
push edi
call fcn.0042dfb1
add esp, 0xc
cmp byte [ebx], 0
je 0x423e4e
jb 0x423e6b
jae 0x423e6b
call 0x24b677b5
or al, 0x75
mov edx, 0x17b037a
inc esi
cmp dword [esp + 0xc], esi
jne 0x423e2c
jp 0x423e77
jnp 0x423e77
call 0x8b4a9c06
sub dword [ebp + eax], 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x56c]
jge 0x423e85
jl 0x423e85
call 0x2066b388
push dword [esp + 0x20]
mov esi, dword [esp + 0x18]
push esi
push dword [esp + 0x24]
call eax
mov edx, esi
add esp, 0xc
test eax, eax
mov esi, dword [esp]
mov ebx, dword [esp + 8]
mov edi, dword [esp + 0x10]
mov ecx, 0x17
je 0x4245bb
jp 0x423eb6
jnp 0x423eb6
call 0x1bb4232
js 0x423ebb
jns 0x423ebb
call 0x822b5648
add eax, dword [eax]
add byte [ecx], dh
leave
mov dword [edi], edx
jmp 0x424243
xor ecx, ecx
jae 0x423ec9
jb 0x423ec9
call 0x412b4a56
add eax, dword [eax]
add byte [ebp + 3], bh
mov dword [ebx], ecx
jmp 0x424210
jge 0x423ed5
jl 0x423ed5
call 0x80a3a62
mov ebx, edi
mov dword [edi], 0xffffffff
jmp 0x42426f
jge 0x423ee7
jl 0x423ee7
call 0xb876c378
add byte [eax], al
add byte [ecx - 0x74d7dbbc], cl
inc esp
and al, 0x14
lea eax, [esp + esi + 0xb8]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x14]
lea eax, [eax + esi*2]
mov edx, dword [esp + 0xc]
lea edi, [edx + edi*2]
add ebx, 0xffffffec
je 0x423f08
jne 0x423f08
call 0xb87ecb99
add byte [eax], al
add byte [ebp - 0x35bbf02e], al
lea ecx, [esp + edi + 0xb8]
test edx, edx
cmove ecx, edx
lea eax, [esp + eax + 0xb8]
mov edx, dword [ebp + 8]
mov edx, dword [edx + 0x504]
mov edx, dword [edx + 0xc]
js 0x423f2c
jns 0x423f2c
call 0xff989581
je 0x423f56
push ecx
push esi
push esi
push dword [esp + 0x34]
push dword [esp + 0x30]
push dword [esp + 0x28]
push eax
push dword [esp + 0x2c]
push dword [esp + 0x54]
xor al, 0xff
je 0x423f5a
xor bh, bh
je 0x423f5e
sub byte [eax - 1], dl
je 0x423f63
sub al, 0xff
je 0x423f67
push esp
call edx
add esp, 0x24
jb 0x423f4e
jae 0x423f4e
call 0x484a3b
add byte [ebp + 3], bh
jmp 0x42455d
jge 0x423f58
jl 0x423f58
add eax, ebp
call 0x18143e9
test byte [ebx - 0x7cebdbac], 0xc3
lea eax, [edi + edi]
aas
add esi, esi
mov edx, dword [esp + 0x14]
push esp
and al, 0x14
add ebx, 0xffffffec
in al, dx
jl 0x423f69
jge 0x423f69
add eax, ebp
call 0xb876cbfa
add byte [eax], al
add byte [ebp - 0x35bbf02e], al
lea ecx, [esp + esi + 0xb8]
test edx, edx
cmove ecx, edx
lea eax, [esp + eax + 0xb8]
mov esi, dword [ebp + 8]
mov edx, dword [esi + 0x500]
mov edx, dword [edx + 0xc]
jp 0x423f8d
jnp 0x423f8d
call 0xff9996e2
je 0x423fb7
push ecx
push edi
push edi
push dword [esp + 0x1c]
push dword [esp + 0x38]
push dword [esp + 0x20]
push eax
push dword [esp + 0x3c]
push dword [esp + 0x58]
sbb al, 0xff
je 0x423fbb
cmp bh, bh
je 0x423fbf
and byte [eax - 1], dl
je 0x423fc4
cmp al, 0xff
je 0x423fc8
pop eax
call edx
add esp, 0x24
mov byte [esi - 0x7b3], 1
jns 0x423fb6
js 0x423fb6
call 0x47e2a3
add byte [ebx + 3], dh
jmp 0x42455d
mov byte [0x73000005], al
add esi, dword [edx + 1]
jae 0x423fc0
jb 0x423fc0
call 0x8b4a9d4f
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x4b4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x18]
xor dword [esp + eax + 0x88b0000], 0xffffff8b
dec ecx
sbb byte [edi + 3], bh
add byte [ebx + 0x18498b08], cl
jg 0x423fd3
jle 0x423fd3
call 0xff924041
rol dword [ebx + 0x508b08c4], 1
add al, 0x8b
dec eax
or byte [ecx - 0x74ebdbb4], cl
inc eax
or al, 0x89
inc esp
and al, 0xc
push 0
push eax
call ecx
add esp, 8
mov edx, dword [eax + 4]
mov ecx, dword [eax + 8]
mov dword [esp + 0x14], ecx
mov eax, dword [eax + 0xc]
mov dword [esp + 0xc], eax
add dword [esp + 8], 0xfffffff8
jge 0x423ff6
jl 0x423ff6
call 0x562c385
add byte [eax], al
mov eax, dword [ebx + 0x520]
mov ecx, dword [eax]
bt ecx, edx
jae 0x4245f3
jnp 0x42400c
jp 0x42400c
call 0x784a809b
add edi, dword [ecx + 1]
mov eax, dword [eax + 8]
js 0x424014
jns 0x424014
call 0x30668ca5
lea ecx, [esp + 0x30]
push ecx
mov edi, edx
push edx
call eax
add esp, 8
movzx eax, byte [eax]
mov ecx, 0xff
mov edx, dword [esp + 0x2c]
mov ebx, ecx
jns 0x424034
js 0x424034
call 0xc37c2a09
shr ecx, 1
cmp ebx, eax
jae 0x42402d
je 0x42403f
jne 0x42403f
call 0x306684ce
mov eax, dword [esp + 0x30]
call 0x424049
add al, ch
lea esi, [esp + 0x70]
push eax
push esi
push edx
call fcn.0042dfb1
add esp, 0xc
and byte [esp + 0x70], bl
mov eax, dword [esp + 0x30]
or byte [eax + esi - 1], 1
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x520]
mov eax, dword [eax + 4]
jbe 0x424077
ja 0x424077
call 0x4466f508
add al, byte [eax]
add byte [esi + 0x57], dl
lea esi, [esp + 0x244]
push esi
push edi
call eax
add esp, 8
mov eax, dword [esp + 0xc]
cmp dword [esi], eax
jne 0x4245f3
mov esi, edi
call 0x424099
add al, ch
lea eax, [esp + 0xb8]
mov edi, dword [esp + 0xc]
push edi
push dword [esp + 0x18]
push eax
call fcn.0040307b
add esp, 0xc
mov eax, dword [ebx + 0x520]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x30]
jbe 0x4240c5
ja 0x4240c5
call 0x4ccf921f
and al, 0x78
push esi
push ecx
lea ecx, [esp + 0x78]
push ecx
push edi
lea edi, [esp + 0xc8]
push edi
call eax
add esp, 0x14
test eax, eax
je 0x4245f3
jl 0x4240e7
jge 0x4240e7
call 0x562c476
add byte [eax], al
mov eax, dword [ebx + 0x520]
mov eax, dword [eax + 0xc]
jge 0x4240f5
jl 0x4240f5
call 0xb4d03482
and al, 0xb4
add byte [eax], al
add byte [esi + 0x53], dl
mov ebx, esi
lea esi, [esp + 0xb4]
push esi
push ebx
call eax
add esp, 8
lea eax, [esp + eax + 0xb8]
mov esi, dword [esi]
jns 0x424113
js 0x424113
call 0x18668da2
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
push esi
push eax
call fcn.00425a70
add esp, 8
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x520]
mov eax, dword [eax + 0x14]
mov ecx, dword [esp + 0x30]
js 0x42413a
jns 0x42413a
call 0x4ccf9291
and al, 0x78
push ebx
push ecx
lea ecx, [esp + 0x78]
push ecx
push edi
call eax
add esp, 0x10
mov esi, dword [esp + 0x244]
jbe 0x424153
ja 0x424153
call 0x754198ad
and al, 0x24
push esi
push edi
push dword [esp + 0x24]
call fcn.0040307b
mov ecx, esi
add esp, 0xc
jl 0x424168
jge 0x424168
call 0x1ba44e5
jns 0x42416d
js 0x42416d
call 0x1c144ef
jle 0x424172
jg 0x424172
call 0x1b244e7
jno 0x424177
jo 0x424177
call 0x1ba44f4
jns 0x42417c
js 0x42417c
call 0x88523805
lea eax, [eax + eax]
add byte [ebp + 3], dh
test esi, esi
js 0x424611
jne 0x424189
je 0x424189
call 0x8668618
mov eax, dword [esp + 8]
mov dword [eax], ecx
mov ebx, dword [esp + 0x10]
jmp 0x42455d
jg 0x42419d
jle 0x42419d
call 0x8b8513d2
je 0x4241c7
xor edx, edx
inc edx
mov esi, dword [esp + 0x24]
mov ecx, esi
and al, 0x89
int1
mov ebx, dword [esp + 0x1c]
push ebx
call fcn.00431f12
add esp, 4
jne 0x4241b8
je 0x4241b8
call 0x2fd3345
add byte [eax], al
add bh, bh
je 0x4241e6
mov ecx, esi
mov edx, 2
push dword [esp + 0x60]
pushal
call fcn.00431f12
add esp, 4
mov eax, 0x24
add byte [ebx + 0x24b804c4], al
add byte [eax], al
add byte [ebx + 0x3740875], cl
mov esi, dword [ebp + 8]
je 0x4241d8
jne 0x4241d8
call 0x582d067
add byte [eax], al
mov ecx, dword [esi + 0x540]
mov edx, dword [ecx]
mov edx, dword [edx + 0x20]
movzx esi, byte [esi + 0x545]
jge 0x4241ef
inc ebp
add eax, 0x37d0000
jl 0x4241ef
call 0x44425b
add byte [ebx + 0x50], dl
push 0x200
push ebx
push eax
push esi
push ecx
call edx
add esp, 0x14
test eax, eax
je 0x424657
jns 0x42420a
js 0x42420a
call 0x8669e99
mov ebx, dword [esp + 8]
mov dword [ebx], eax
add ebx, 4
mov esi, dword [esp]
mov edx, edi
jmp 0x422599
xor eax, eax
mov edx, edi
je 0x424226
jne 0x424226
call 0xc3c545b3
add al, 0x7f
add edi, dword [esi + 1]
mov dword [ebx], eax
add ebx, 4
jg 0x424230
jle 0x424230
call 0x25a71d
invalid
jmp 0x422599
jns 0x42423a
js 0x42423a
call fcn.00414605
invalid
mov dword [ebx], 0xffffffff
add ebx, 4
mov edx, dword [esp + 4]
jmp 0x422599
xor eax, eax
mov esi, dword [esp]
mov ebx, dword [esp + 8]
jp 0x42425a
jnp 0x42425a
call 0x3b449e7
mov dword [edi], eax
jb 0x424261
jae 0x424261
call 0x25764e
push dword [ecx]
sar byte [ebx + eax + 0x7d], 1
jmp 0x422599
xor eax, eax
jl 0x42426d
jge 0x42426d
call 0xc3c545fa
add al, 0xe9
and ah, bl
invalid
mov dword [ebx], eax
add ebx, 4
jmp 0x422599
jae 0x42427c
jb 0x42427c
call 0x7066870d
lea eax, [esp + 0x70]
lea ecx, [esp + 0xb8]
xor edx, edx
inc edx
push eax
call fcn.00431f12
add esp, 4
mov edi, 0x1a
test eax, eax
je 0x4244e5
jl 0x4242a5
jge 0x4242a5
call 0xb866cf36
add byte [eax], al
add byte [edx + 2], bh
lea ecx, [esp + 0xb8]
mov edx, 2
lea eax, [esp + 0x80]
push eax
call fcn.00431f12
add esp, 4
test eax, eax
mov ebx, dword [esp + 8]
je 0x424548
jle 0x4242d2
jg 0x4242d2
call 0x2066bf59
add byte [edi], cl
test byte [ebx], bl
add al, byte [eax]
add byte [edi + 3], dh
cmp dword [esp + 0x20], 0
je 0x4244f8
ja 0x4242e2
jbe 0x4242e2
call 0xc6687ad
add byte [eax], al
add byte [eax], al
mov dword [esp + 0xc], 0
mov esi, 0x24
mov edx, dword [esp + 0x1c]
call 0x4242f9
add al, ch
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x524]
mov edi, dword [esp + 0x14]
add edi, 4
jb 0x42430f
jae 0x42430f
call 0x4466c7a0
add al, byte [eax]
add byte [eax + 0x57], dl
lea eax, [esp + 0x244]
push eax
push edi
push esi
push dword [esp + 0x18]
push dword [esp + 0x20]
push edx
call ecx
add esp, 0x18
test eax, eax
je 0x424350
call 0x424331
add al, ch
lea eax, [esp + 0x70]
push esi
push eax
lea eax, [esp + 0x24c]
push eax
call fcn.004030d7
add esp, 0xc
test eax, eax
je 0x4244f1
jnp 0x424355
jp 0x424355
call 0x442d42
add byte [edx + 3], bh
jmp 0x424543
jp 0x42435f
jnp 0x42435f
call 0x587c729
add byte [eax], al
add bh, al
cmp dword [esp + eax], 0
add cl, ch
arpl di, si
invalid
mov byte [ebx + 0x545], 0
mov dword [ebx + 0x4bc], 0
jmp case.0x422456.82
jo 0x42437a
jno 0x42437a
call 0x48668809
mov eax, dword [esp + 0x48]
jne 0x424383
je 0x424383
call 0x84cf7c12
and al, 0xb8
add byte [eax], al
add byte [ecx - 0x748fdbbc], cl
dec ebp
or byte [edi], cl
mov bh, 0x89
sub bh, bh
invalid
mov edi, dword [eax]
lea eax, [esp + 0xb8]
mov dword [esp + 0x70], eax
mov ecx, dword [ebp + 8]
movzx ecx, word [ecx - 0xd8]
cmp ecx, 0x303
jb 0x4243b6
jae 0x4243a7
jb 0x4243a7
call 0x24669036
mov ecx, dword [esp + 0x24]
push eax
call fcn.00431f12
add esp, 4
jmp 0x4243fe
jns 0x4243bb
js 0x4243bb
call 0x898515f0
jl 0x4243e5
xor edx, edx
inc edx
mov dword [esp + 0xc], edi
mov edi, esi
mov esi, ebx
mov ebx, dword [esp + 0x24]
mov ecx, ebx
push eax
or al, 0x89
test dword [ecx + 0x245c8bde], 0x50d98924
call fcn.00431f12
add esp, 4
je 0x4243da
jne 0x4243da
call 0xf3cc1d67
mov ecx, ebx
mov ebx, esi
mov esi, edi
mov edi, dword [esp + 0xc]
mov edx, 2
add al, byte [eax]
add byte [eax], al
lea eax, [esp + 0xc8]
push eax
call fcn.00431f12
add esp, 4
mov eax, 0x24
add ebx, 0xfffffff8
jo 0x424406
jno 0x424406
call 0x70669097
lea ecx, [esp + 0x70]
mov dword [ecx + 4], eax
test esi, esi
mov eax, 0x405a0f
mov edx, 0x4059ff
cmove edx, eax
jae 0x424421
jb 0x424421
call 0x5243ae76
push ecx
push 1
push edx
push 0x30
push dword [esp + 0x64]
push 0xc
push dword [esp + 0x34]
call edi
add esp, 0x1c
jle 0x42443b
jg 0x42443b
call 0x1c047be
jg 0x424440
jle 0x424440
call fcn.00435d2d
add byte [edi + 3], dh
jmp 0x42455d
ja 0x42444a
jbe 0x42444a
call 0x486688d9
mov eax, dword [esp + 0x48]
add ebx, 0xfffffff8
mov dword [esp + 8], ebx
js 0x42445a
jns 0x42445a
call 0x3c044e9
mov eax, dword [eax]
jle 0x424461
jg 0x424461
call 0x706690f2
lea ecx, [esp + 0x70]
lea edi, [esp + 0xb8]
push ecx
push 2
push 0x405abe
push 0x30
push dword [esp + 0x64]
push 0x58
push edi
call eax
add esp, 0x1c
jno 0x424487
jo 0x424487
call 0x84d03b10
and al, 0xd8
add byte [eax], al
add byte [edi], cl
inc ebp
clc
test esi, esi
lea eax, [esp + 0xd8]
cmovne edi, eax
lea eax, [esp + 0x104]
lea ecx, [esp + 0xf8]
cmove eax, ecx
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x510]
mov ecx, dword [ecx + 0xc]
mov edx, dword [ebx + 0x4f8]
mov esi, dword [ebx + 0x4fc]
jl 0x4244c1
jge 0x4244c1
call 0x52989c15
push eax
push edi
push esi
push edx
push dword [esp + 0x48]
call ecx
add esp, 0x14
mov byte [ebx - 0x7b3], 1
mov ebx, dword [esp + 8]
jbe 0x4244de
ja 0x4244de
call 0x1b01c2cd
add byte [eax], al
add byte [ebx - 0x14f7dba4], cl
pop ebp
jmp 0x42455d
mov edi, 0x1a
mov ebx, dword [esp + 8]
jmp 0x424548
mov ebx, dword [esp + 8]
jmp 0x4244fd
je 0x4244f6
jne 0x4244f6
call 0x250087e5
add byte [eax], al
add byte [ebx + 0x7e102454], cl
add edi, dword [edi + 1]
jmp 0x42453a
mov esi, 0x24
mov edx, dword [esp + 0x10]
jle 0x424506
jg 0x424506
call 0x8b4a9295
and dword [eax], 0x8b000005
mov dword [eax], ebp
add eax, 0x7c8b0000
and al, 0x14
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x520]
mov ecx, dword [ecx + 0x528]
mov edi, dword [esp + 0x14]
add edi, 4
jg 0x424521
jle 0x424521
call 0x24b74477
and byte [edi + 0x56], dl
push edx
push dword [esp + 0x20]
push edi
push esi
lea edx, [esp + 0x80]
push edx
push eax
call ecx
add esp, 0x18
test eax, eax
je 0x424543
ja 0x42453f
jbe 0x42453f
call 0x62e4474
xor edi, edi
jmp 0x424548
mov edi, 0x1b
jbe 0x42454d
ja 0x42454d
call 0x1b448c4
jae 0x424552
jb 0x424552
call 0x1b848cd
ja 0x424557
jbe 0x424557
call 0x8436c0e4
ret
mov dword [ebx - 0xc], edi
add ebx, 0xfffffff8
mov edx, dword [esp + 4]
mov esi, dword [esp]
jmp 0x422599
mov dword [esp + 8], ebx
mov dword [esp + 4], edx
jae 0x424576
jb 0x424576
call 0x50ade05
add byte [eax], al
mov ebx, dword [eax + 0x4c8]
mov edi, 6
call 0x424587
add al, ch
mov eax, dword [ebx]
jge 0x42458f
jl 0x42458f
call 0x239a2de3
add dword [eax], eax
push eax
call sub.msvcrt.dll_strlen
add esp, 4
lea edi, [edi + eax + 1]
add ebx, 4
dec esi
jne 0x424581
jne 0x4245a7
je 0x4245a7
call 0x866a236
mov ebx, dword [esp + 8]
mov dword [ebx], edi
add ebx, 4
jmp 0x42455d
jp 0x4245b7
jnp 0x4245b7
call 0xa2d5546
mov ecx, dword [edi]
jmp 0x4245c4
jl 0x4245c0
jge 0x4245c0
call 0x4669a4f
mov edx, dword [esp + 4]
jae 0x4245c9
jb 0x4245c9
call 0x1b5493f
jb 0x4245ce
jae 0x4245ce
call 0x804a8b5d
mov eax, 0xfffff84c
add byte [edx + edx + 0x75], dh
add esi, dword [ecx + eax - 0x18]
mov eax, dword [ebp + 8]
cmp byte [eax - 0x7b4], 0
je 0x4245ec
jne 0x4245df
je 0x4245df
call 0xf88ec6a9
invalid
mov byte [eax - 0x7b4], 0
mov dword [eax - 0x7e4], ecx
jne 0x4245f1
je 0x4245f1
call 0x3c192e0
jmp 0x42463f
jg 0x4245f8
jle 0x4245f8
call 0x1bc4977
jnp 0x4245fd
jp 0x4245fd
call 0x1c1497f
jle 0x424602
jg 0x424602
call 0x1b44979
jae 0x424607
jb 0x424607
call 0x1b5497d
jb 0x42460c
jae 0x42460c
call 0x422cc9
dec dword [ebx - 0x74fbdbac]
xor al, 0x24
mov ecx, 0xffffffe6
mov edx, dword [esp + 4]
mov esi, dword [esp]
mov edi, dword [esp + 8]
call 0x424622
add al, ch
neg ecx
jmp 0x4245c4
jo 0x42462c
jno 0x42462c
call 0x1bd49aa
jp 0x424631
jnp 0x424631
call fcn.004260ee
add byte [ebx - 0x7a14dbcc], cl
mov ecx, 0x1a
mov esi, dword [esp]
jmp 0x4245c0
xor esi, esi
mov edi, ebx
js 0x424644
jns 0x424644
call 0x894a8bd3
cmp byte [ecx + 0x70890450], cl
or byte [ebp + 0x5f5ef465], cl
mov eax, dword [ebp + 8]
mov dword [eax], edi
mov dword [eax + 4], edx
mov dword [eax + 8], esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, 0x1a
mov eax, dword [esp + 8]
mov esi, dword [esp]
mov edx, edi
mov edi, eax
jmp 0x4245c4