Function at 0x414340
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7c
push ebx
push esi
push edi
mov edi, dword [ebp + 0x10]
mov eax, dword [edi]
mov cl, byte [eax]
inc eax
mov dword [edi], eax
cmp cl, 0x52
jne case.0x414377.66
mov cl, byte [eax]
movsx ecx, cl
inc eax
add ecx, 0xffffffbf
mov dword [edi], eax
cmp ecx, 0x36
ja case.0x414377.66
movzx ecx, byte [ecx + 0x415c90]
jmp dword [ecx*4 + 0x415c68]
push 4
dec eax
push str.Tgid
xor ebx, ebx
push eax
mov dword [ebp - 0x1c], eax
mov dword [ebp + 0x10], 0x3d
lea esi, [ebx + 0x1f]
call fcn.0040bd70
add esp, 0xc
test eax, eax
je 0x4143fb
mov ecx, dword [ebp + 0x10]
cmp ecx, ebx
je case.0x414377.66
test eax, eax
jns 0x4143b9
lea ecx, [esi - 1]
mov dword [ebp + 0x10], ecx
jmp 0x4143bc
lea ebx, [esi + 1]
cmp ecx, ebx
jl case.0x414377.66
mov eax, dword [ebp + 0x10]
sub eax, ebx
mov ecx, dword [ebp - 0x1c]
cdq
sub eax, edx
mov esi, eax
sar esi, 1
add esi, ebx
lea eax, [esi + esi*2]
add eax, eax
add eax, eax
movzx edx, byte [eax + eax + 0x474bf8]
add eax, eax
push edx
lea eax, [eax + 0x474bf9]
push eax
push ecx
call fcn.0040bd70
add esp, 0xc
test eax, eax
jne 0x4143a2
mov ebx, dword [ebp + 0x20]
lea esi, [esi + esi*2]
add esi, esi
add esi, esi
movzx edx, byte [esi + esi + 0x474bf8]
add esi, esi
dec edx
add dword [edi], edx
movzx eax, word [esi + 0x474c0c]
push 0x10
lea ecx, [ebp - 0x2c]
push 0
push ecx
or ebx, eax
call fcn.004127e0
movzx eax, byte [esi + 0x474c03]
add esp, 0xc
dec eax
test bl, 0x10
je 0x414492
cmp eax, 7
ja case.0x414497.2
jmp dword [eax*4 + 0x415cc8]
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov eax, dword [eax - 4]
cdq
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], edx
or ebx, 0x800
jmp 0x4144b5
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov eax, dword [eax - 4]
cdq
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], edx
or ebx, 0x1000
jmp 0x4144b5
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov eax, dword [eax - 4]
cdq
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], edx
or ebx, 0x2000
jmp 0x4144b5
cmp eax, 9
ja case.0x414497.2
jmp dword [eax*4 + 0x415ce8]
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov al, byte [eax - 4]
mov byte [ebp - 0x2c], al
or ebx, 0x800
mov eax, dword [ebp - 0x2c]
test ebx, 0x400
je 0x414575
mov edx, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x18]
push ebx
push edx
push ecx
push eax
lea edx, [ebp - 0x7c]
push 0x50
push edx
call fcn.0043d620
mov ecx, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x7c]
push eax
push ecx
call dword [ebp + 8]
add esp, 0x24
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov cx, word [eax - 4]
mov word [ebp - 0x2c], cx
or ebx, 0x1000
jmp case.0x414497.2
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2c], eax
or ebx, 0x2000
jmp 0x4144b5
mov eax, dword [ebp + 0x14]
add dword [eax], 8
mov ecx, dword [eax]
mov eax, dword [ecx - 8]
mov dword [ebp - 0x2c], eax
mov edx, dword [ecx - 4]
mov dword [ebp - 0x28], edx
or ebx, 0x4000
jmp 0x4144b5
mov eax, dword [ebp + 0x14]
add dword [eax], 8
mov ecx, dword [eax]
mov eax, dword [ecx - 8]
mov dword [ebp - 0x2c], eax
mov cx, word [ecx - 4]
mov word [ebp - 0x28], cx
jmp 0x4144b5
mov eax, dword [ebp + 0x14]
add dword [eax], 0xc
mov ecx, dword [eax]
mov eax, dword [ecx - 0xc]
mov dword [ebp - 0x2c], eax
mov edx, dword [ecx - 8]
mov dword [ebp - 0x28], edx
mov cx, word [ecx - 4]
mov word [ebp - 0x24], cx
jmp 0x4144b5
mov ecx, dword [esi + 0x474c08]
cmp ecx, 0xa
ja case.0x414377.66
jmp dword [ecx*4 + 0x415d10]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x18]
push ebx
push edx
movzx edx, byte [esi + 0x474c04]
push ecx
mov ecx, dword [ebp - 0x28]
push edx
push ecx
push eax
lea edx, [ebp - 0x7c]
push edx
call fcn.00403920
add esp, 0x1c
push eax
mov eax, dword [ebp + 0xc]
lea edx, [ebp - 0x7c]
push edx
push eax
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x18]
test ecx, ecx
jns 0x4145df
movzx edx, byte [esi + 0x474c03]
mov ecx, ebx
shr ecx, 2
and ecx, 2
lea ecx, [ecx + edx*2]
or ebx, 4
mov edx, dword [ebp + 0x1c]
push ebx
push edx
mov edx, dword [ebp - 0x28]
push ecx
movzx ecx, byte [esi + 0x474c04]
push ecx
push edx
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00403920
add esp, 0x1c
push eax
mov eax, dword [ebp + 0xc]
lea edx, [ebp - 0x7c]
push edx
push eax
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x28]
cmp eax, 1
jne 0x414638
test ecx, ecx
jne 0x414638
mov ecx, dword [ebp + 0xc]
push 5
push str.true
push ecx
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, eax
or edx, ecx
jne 0x414656
mov eax, dword [ebp + 0xc]
push 5
push str.false
push eax
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp + 0xc]
push eax
push str.__lld_
push 0
push 0
push ecx
push edx
call fcn.004041e0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx eax, word [ebp - 0x2a]
and ebx, 0xffff046f
or ebx, 0x1000
push ebx
push 0xffffffffffffffff
push 4
cdq
push 0x10
push edx
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00403920
movzx eax, word [ebp - 0x2c]
push ebx
push 0xffffffffffffffff
push 4
cdq
push 0x10
push edx
push eax
lea ecx, [ebp - 0x77]
push ecx
mov byte [ebp - 0x78], 0x3a
call fcn.00403920
mov eax, 9
jmp 0x414757
movzx eax, word [ebp - 0x28]
and ebx, 0xffff046f
mov edx, ebx
or edx, 0x1000
push edx
push 0xffffffffffffffff
push 4
cdq
push 0x10
push edx
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00403920
mov ecx, dword [ebp - 0x2c]
or ebx, 0x2000
push ebx
push 0xffffffffffffffff
push 8
push 0x10
push 0
push ecx
lea edx, [ebp - 0x77]
push edx
mov byte [ebp - 0x78], 0x3a
call fcn.00403920
mov eax, 0xd
jmp 0x414757
and ebx, 0xffff046f
mov eax, ebx
or eax, 0x1000
push eax
movzx eax, word [ebp - 0x24]
push 0xffffffffffffffff
push 4
cdq
push 0x10
push edx
push eax
lea ecx, [ebp - 0x7c]
push ecx
call fcn.00403920
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
or ebx, 0x4000
push ebx
push 0xffffffffffffffff
push 0x10
push 0x10
push edx
push eax
lea ecx, [ebp - 0x77]
push ecx
mov byte [ebp - 0x78], 0x3a
call fcn.00403920
mov eax, 0x15
add esp, 0x38
push eax
mov eax, dword [ebp + 0xc]
lea edx, [ebp - 0x7c]
push edx
push eax
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx ecx, byte [ebp - 0x29]
movzx edx, byte [ebp - 0x2a]
movzx eax, byte [ebp - 0x2b]
push ecx
movzx ecx, byte [ebp - 0x2c]
push edx
mov edx, dword [ebp + 0xc]
push eax
mov eax, dword [ebp + 8]
push ecx
push str._u._u._u._u
push 0
push 0
push edx
push eax
call fcn.004041e0
add esp, 0x24
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [eax + 0x1000]
cmp ecx, 0x2000
jb 0x4147ca
mov edx, dword [ebp + 0xc]
push eax
mov eax, dword [ebp + 8]
push edx
push eax
call fcn.00414130
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0xc]
push 6
push 0x474bd4
push ecx
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea edx, [eax + 0x1000]
cmp edx, 0x2000
jb 0x41482d
movzx ecx, byte [eax + 5]
movzx edx, byte [eax + 4]
push ecx
movzx ecx, byte [eax + 3]
push edx
movzx edx, byte [eax + 2]
push ecx
movzx ecx, byte [eax + 1]
push edx
movzx edx, byte [eax]
mov eax, dword [ebp + 0xc]
push ecx
mov ecx, dword [ebp + 8]
push edx
push str._02x:_02x:_02x:_02x:_02x:_02x
push 0
push 0
push eax
push ecx
call fcn.004041e0
add esp, 0x2c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0xc]
push 6
push 0x474bd4
push edx
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [eax + 0x1000]
cmp ecx, 0x2000
jb 0x414925
mov edx, dword [eax + 0x10]
mov ecx, edx
dec ecx
je 0x4148b6
dec ecx
je 0x414888
sub ecx, 2
je 0x4147f0
mov eax, dword [ebp + 8]
push edx
mov edx, dword [ebp + 0xc]
push str.unsupported_netaddr_type_u
push 0
push 0
push edx
push eax
call fcn.004041e0
add esp, 0x18
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [eax + 0x14]
cmp ecx, 0xffffffff
je 0x4147b2
mov edx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp + 0xc]
push eax
push str.__RTnaipv6_:_u
push 0
push 0
push ecx
push edx
call fcn.004041e0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [eax + 0x14]
cmp ecx, 0xffffffff
jne 0x4148f1
movzx ecx, byte [eax + 3]
movzx edx, byte [eax + 2]
push ecx
movzx ecx, byte [eax + 1]
push edx
movzx edx, byte [eax]
mov eax, dword [ebp + 0xc]
push ecx
mov ecx, dword [ebp + 8]
push edx
push str._u._u._u._u
push 0
push 0
push eax
push ecx
call fcn.004041e0
add esp, 0x24
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx edx, byte [eax + 3]
push ecx
movzx ecx, byte [eax + 2]
push edx
movzx edx, byte [eax + 1]
movzx eax, byte [eax]
push ecx
mov ecx, dword [ebp + 0xc]
push edx
mov edx, dword [ebp + 8]
push eax
push str._u._u._u._u:_u
push 0
push 0
push ecx
push edx
call fcn.004041e0
add esp, 0x28
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
push 6
push 0x474bd4
push eax
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [eax + 0x1000]
cmp ecx, 0x2000
jb 0x41482d
movzx edx, byte [eax + 0xf]
movzx ecx, byte [eax + 0xe]
push edx
movzx edx, byte [eax + 0xd]
push ecx
movzx ecx, byte [eax + 0xc]
push edx
movzx edx, byte [eax + 0xb]
push ecx
movzx ecx, byte [eax + 0xa]
push edx
movzx edx, byte [eax + 9]
push ecx
movzx ecx, byte [eax + 8]
push edx
movzx edx, word [eax + 6]
push ecx
movzx ecx, word [eax + 4]
push edx
mov edx, dword [eax]
mov eax, dword [ebp + 0xc]
push ecx
mov ecx, dword [ebp + 8]
push edx
push str._08x__04x__04x__02x_02x__02x_02x_02x_02x_02x_02x
push 0
push 0
push eax
push ecx
call fcn.004041e0
add esp, 0x40
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movsx ecx, byte [eax]
inc eax
mov dword [edi], eax
cmp ecx, 0x6e
je 0x414acc
cmp ecx, 0x73
jne case.0x414377.66
cmp byte [ebp + 0x24], 0x6c
jne case.0x414377.66
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov eax, dword [eax - 4]
lea ecx, [eax + 0x1000]
mov dword [ebp + 0x10], eax
cmp ecx, 0x2000
jb 0x4149fe
mov ecx, dword [ebp + 0x1c]
xor esi, esi
test ecx, ecx
jle 0x414a0a
jmp 0x4149f0
cmp word [eax + esi*2], 0
je 0x414a0a
inc esi
cmp esi, ecx
jl 0x4149f0
jmp 0x414a0a
mov dword [ebp + 0x10], 0x4a33c4
mov esi, 6
xor ebx, ebx
test byte [ebp + 0x20], 2
jne 0x414a46
mov eax, dword [ebp + 0x18]
dec eax
mov dword [ebp + 0x18], eax
cmp eax, esi
jl 0x414a46
mov edi, eax
sub edi, esi
inc edi
sub eax, edi
mov dword [ebp + 0x18], eax
jmp 0x414a30
mov edx, dword [ebp + 0xc]
push 1
push 0x46896c
push edx
call dword [ebp + 8]
add esp, 0xc
add ebx, eax
dec edi
jne 0x414a30
sub dword [ebp + 0x18], esi
test esi, esi
jle 0x414aa0
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp + 0x10]
push ecx
dec esi
mov dword [ebp - 0x14], 0
call fcn.00404920
mov eax, dword [ebp - 0x14]
add esp, 8
cmp eax, 0x80
jae 0x414a7a
mov byte [ebp - 0x7c], al
lea eax, [ebp - 0x7b]
jmp 0x414a87
push eax
lea edx, [ebp - 0x7c]
push edx
call fcn.00413aa0
add esp, 8
lea ecx, [ebp - 0x7c]
mov byte [eax], 0
sub eax, ecx
push eax
mov edx, ecx
push edx
push edi
call dword [ebp + 8]
add esp, 0xc
add ebx, eax
test esi, esi
jg 0x414a50
mov esi, dword [ebp + 0x18]
dec esi
js 0x414ac3
mov edi, dword [ebp + 0xc]
lea esp, [esp]
push 1
push 0x46896c
push edi
call dword [ebp + 8]
add esp, 0xc
add ebx, eax
dec esi
jns 0x414ab0
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov edx, dword [eax - 4]
lea eax, [edx + 0x1000]
mov ecx, edx
cmp eax, 0x2000
jae 0x414afe
mov ecx, dword [ebp + 0xc]
push 6
push str._null_
push ecx
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov al, byte [edx]
test al, al
je 0x414b2e
cmp al, 0x5c
je 0x414b10
cmp al, 0x2f
je 0x414b10
cmp al, 0x3a
jne 0x414b26
mov al, byte [ecx + 1]
inc ecx
test al, al
je 0x414b2e
cmp al, 0x5c
je 0x414b10
cmp al, 0x2f
je 0x414b10
cmp al, 0x3a
je 0x414b10
mov edx, ecx
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x414b04
sub ecx, edx
push ecx
push edx
mov edx, dword [ebp + 0xc]
push edx
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movsx ecx, byte [eax]
inc eax
mov dword [edi], eax
cmp ecx, 0x6e
jne case.0x414377.66
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov esi, dword [eax - 4]
lea eax, [esi + 0x1000]
xor edi, edi
mov ecx, esi
cmp eax, 0x2000
jb 0x414ae6
mov al, byte [esi]
test al, al
je 0x414bcb
cmp al, 0x28
je 0x414bcb
movsx edx, al
cmp edx, 0x20
je 0x414b89
cmp edx, 9
jne 0x414bb8
mov al, byte [ecx + 1]
inc ecx
test al, al
je 0x414bc5
movsx edx, al
cmp edx, 0x20
je 0x414ba2
cmp edx, 9
je 0x414ba2
cmp al, 0x28
jne 0x414bac
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x414b91
jmp 0x414bc5
test al, al
je 0x414bc5
test edi, edi
jne 0x414bc5
mov esi, ecx
jmp 0x414bc5
cmp al, 0x3c
jne 0x414bbf
inc edi
jmp 0x414bc4
cmp al, 0x3e
jne 0x414bc4
dec edi
inc ecx
mov al, byte [ecx]
test al, al
jne 0x414b78
mov edx, dword [ebp + 0xc]
sub ecx, esi
push ecx
push esi
push edx
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movsx ecx, byte [eax]
inc eax
mov dword [edi], eax
cmp ecx, 0x72
je 0x414fe0
cmp ecx, 0x78
jne case.0x414377.66
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov edi, dword [ebp + 0x1c]
mov ebx, dword [eax - 4]
xor esi, esi
mov dword [ebp - 8], ebx
cmp edi, esi
jge 0x414c17
mov edi, 0x10
mov dword [ebp + 0x1c], edi
cmp ebx, esi
je 0x414fc8
mov edx, dword [ebp + 0x10]
mov eax, dword [edx]
movsx ecx, byte [eax]
inc eax
mov dword [edx], eax
cmp ecx, 0x44
je 0x414de9
cmp ecx, 0x64
je 0x414c9e
cmp ecx, 0x73
jne case.0x414377.66
mov eax, edi
dec edi
test eax, eax
jle case.0x414377.66
movzx eax, byte [ebx]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
push eax
push str._02x
push 0
push 0
push ecx
push edx
call fcn.004041e0
add esp, 0x18
inc ebx
mov esi, eax
test edi, edi
jle 0x414c95
movzx eax, byte [ebx]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
push eax
push str.__02x
push 0
push 0
push ecx
push edx
call fcn.004041e0
dec edi
add esp, 0x18
add esi, eax
inc ebx
test edi, edi
jg 0x414c70
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0xc], esi
mov dword [ebp - 4], esi
cmp dword [ebp + 0x18], esi
jg 0x414cb0
mov dword [ebp + 0x18], 0x10
cmp edi, esi
jle 0x414ddf
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov edi, edi
cmp dword [ebp - 0xc], 0
mov eax, 0x471e0c
jne 0x414cd0
mov eax, 0x468f28
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
push ecx
push edx
push 8
push eax
push str._s_0p__04x:
push 0
push 0
push esi
push edi
call fcn.004041e0
add dword [ebp - 4], eax
xor ebx, ebx
add esp, 0x24
cmp dword [ebp + 0x18], ebx
jle 0x414d68
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0xc]
mov dword [ebp + 0x10], eax
mov eax, dword [ebp - 0xc]
lea ecx, [ebx + eax]
cmp ecx, dword [ebp + 0x1c]
jge 0x414d41
test bl, 7
jne 0x414d1a
mov eax, 0x474b14
test ebx, ebx
jne 0x414d1f
mov eax, str.__02x
mov edx, dword [ebp + 0x10]
movzx ecx, byte [edx + ecx]
push ecx
push eax
push 0
push 0
push esi
push edi
call fcn.004041e0
add dword [ebp - 4], eax
inc ebx
add esp, 0x18
cmp ebx, dword [ebp + 0x18]
jl 0x414d01
jmp 0x414d68
cmp ebx, dword [ebp + 0x18]
jge 0x414d68
mov eax, dword [ebp + 0x18]
sub eax, ebx
mov ebx, dword [ebp - 4]
mov dword [ebp + 0x10], eax
push 3
push 0x474b10
push esi
call edi
add esp, 0xc
add ebx, eax
dec dword [ebp + 0x10]
jne 0x414d51
mov dword [ebp - 4], ebx
push 1
push 0x46896c
push esi
call edi
add dword [ebp - 4], eax
add esp, 0xc
cmp dword [ebp + 0x18], 0
mov dword [ebp - 0x14], 0
jle 0x414dc8
mov ebx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
sub eax, ebx
mov dword [ebp - 0x1c], eax
jmp 0x414d95
mov eax, dword [ebp - 0x1c]
add eax, ebx
cmp eax, dword [ebp + 0x1c]
jge 0x414dc8
mov al, byte [ebx]
mov byte [ebp + 0x13], al
sub al, 0x20
cmp al, 0x5e
lea eax, [ebp + 0x13]
jbe 0x414daf
mov eax, 0x474b0c
push 1
push eax
push esi
call edi
add dword [ebp - 4], eax
mov eax, dword [ebp - 0x14]
inc eax
add esp, 0xc
inc ebx
mov dword [ebp - 0x14], eax
cmp eax, dword [ebp + 0x18]
jl 0x414d92
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp - 0xc]
add dword [ebp - 8], ecx
add eax, ecx
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp + 0x1c]
jl 0x414cc0
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x18]
xor ecx, ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 4], ecx
cmp esi, ecx
jg 0x414e00
mov esi, 0x10
mov eax, edi
sub eax, esi
mov dword [ebp - 0x18], eax
cmp edi, ecx
jle 0x414fbe
mov edi, dword [ebp + 0xc]
mov eax, ebx
sub eax, esi
mov dword [ebp - 0x14], eax
jmp 0x414e23
mov ebx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x18]
jge 0x414e69
test eax, eax
jle 0x414e69
mov edx, dword [ebp - 0x14]
push esi
push edx
push ebx
call fcn.0040b740
add esp, 0xc
test eax, eax
jne 0x414e69
cmp dword [ebp - 0x10], eax
jne 0x414e61
mov eax, dword [ebp - 0xc]
add eax, esi
cmp eax, dword [ebp - 0x18]
jge 0x414e98
push esi
push ebx
add ebx, esi
push ebx
call fcn.0040b740
add esp, 0xc
test eax, eax
jne 0x414e98
inc dword [ebp - 0x10]
jmp 0x414fa7
mov eax, dword [ebp - 0x10]
test eax, eax
jle 0x414e98
mov ecx, dword [ebp + 8]
push eax
push 0x474af8
push 8
push str._n_.s____ditto_x__u_
push 0
push 0
push edi
push ecx
call fcn.004041e0
add esp, 0x20
add dword [ebp - 4], eax
mov dword [ebp - 0x10], 0
cmp dword [ebp - 0xc], 0
mov eax, 0x471e0c
jne 0x414ea8
mov eax, 0x468f28
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
push edx
mov edx, dword [ebp + 8]
push ecx
push 8
push eax
push str._s_0p__04x:
push 0
push 0
push edi
push edx
call fcn.004041e0
add dword [ebp - 4], eax
add esp, 0x24
xor ebx, ebx
test esi, esi
jle 0x414f48
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0xc]
mov dword [ebp + 0x10], eax
jmp 0x414ee0
mov eax, dword [ebp - 0xc]
lea ecx, [ebx + eax]
cmp ecx, dword [ebp + 0x1c]
jge 0x414f22
test bl, 7
jne 0x414ef9
mov eax, 0x474b14
test ebx, ebx
jne 0x414efe
mov eax, str.__02x
mov edx, dword [ebp + 0x10]
movzx ecx, byte [edx + ecx]
mov edx, dword [ebp + 8]
push ecx
push eax
push 0
push 0
push edi
push edx
call fcn.004041e0
add dword [ebp - 4], eax
inc ebx
add esp, 0x18
cmp ebx, esi
jl 0x414ee0
jmp 0x414f48
cmp ebx, esi
jge 0x414f48
mov eax, esi
sub eax, ebx
mov ebx, dword [ebp - 4]
mov dword [ebp + 0x10], eax
push 3
push 0x474b10
push edi
call dword [ebp + 8]
add esp, 0xc
add ebx, eax
dec dword [ebp + 0x10]
jne 0x414f30
mov dword [ebp - 4], ebx
push 1
push 0x46896c
push edi
call dword [ebp + 8]
add dword [ebp - 4], eax
add esp, 0xc
mov dword [ebp - 0x1c], 0
test esi, esi
jle 0x414fa7
mov ebx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
sub eax, ebx
mov dword [ebp - 0x20], eax
jmp 0x414f74
mov eax, dword [ebp - 0x20]
add eax, ebx
cmp eax, dword [ebp + 0x1c]
jge 0x414fa7
mov al, byte [ebx]
mov byte [ebp + 0x13], al
sub al, 0x20
cmp al, 0x5e
lea eax, [ebp + 0x13]
jbe 0x414f8e
mov eax, 0x474b0c
push 1
push eax
push edi
call dword [ebp + 8]
add dword [ebp - 4], eax
mov eax, dword [ebp - 0x1c]
inc eax
add esp, 0xc
inc ebx
mov dword [ebp - 0x1c], eax
cmp eax, esi
jl 0x414f71
mov eax, dword [ebp - 0xc]
add dword [ebp - 8], esi
add dword [ebp - 0x14], esi
add eax, esi
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp + 0x1c]
jl 0x414e20
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
push 6
push str._null_
push eax
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov esi, dword [eax - 4]
push esi
call fcn.0043d610
mov ebx, eax
mov eax, dword [edi]
movsx ecx, byte [eax]
inc eax
mov dword [edi], eax
mov eax, ecx
add esp, 4
sub eax, 0x61
je 0x41504f
sub eax, 2
je 0x415030
sub eax, 3
jne case.0x414377.66
mov ecx, dword [ebx]
push ecx
call fcn.00416590
mov edx, dword [ebx]
push eax
mov eax, dword [ebp + 0xc]
push edx
push eax
call dword [ebp + 8]
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 4]
push ecx
call fcn.00416590
mov edx, dword [ebx + 4]
push eax
mov eax, dword [ebp + 0xc]
push edx
push eax
call dword [ebp + 8]
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
mov eax, dword [ebp + 0xc]
push ecx
mov ecx, dword [ebp + 8]
push esi
push edx
push str._s__0x_08X_____s
push 0
push 0
push eax
push ecx
call fcn.004041e0
add esp, 0x20
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov ebx, dword [eax - 4]
push ebx
call fcn.0041cf30
mov ecx, dword [edi]
mov esi, eax
movsx eax, byte [ecx]
inc ecx
sub eax, 0x61
add esp, 4
mov dword [edi], ecx
cmp eax, 0x12
ja case.0x414377.66
movzx edx, byte [eax + 0x415d50]
jmp dword [edx*4 + 0x415d3c]
mov eax, dword [esi + 8]
push eax
call fcn.00416590
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0xc]
push eax
push ecx
push edx
call dword [ebp + 8]
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi]
push eax
call fcn.00416590
mov ecx, dword [esi]
mov edx, dword [ebp + 0xc]
push eax
push ecx
push edx
call dword [ebp + 8]
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 4]
push eax
call fcn.00416590
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0xc]
push eax
push ecx
push edx
call dword [ebp + 8]
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0xc]
push eax
mov eax, dword [ebp + 8]
push ebx
push ecx
push str._s___d_____s
push 0
push 0
push edx
push eax
call fcn.004041e0
add esp, 0x20
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov esi, dword [eax - 4]
push esi
call fcn.0043d530
jmp 0x414ff1
push 9
dec eax
push 0x474aa1
xor esi, esi
push eax
mov dword [ebp - 0x20], eax
xor ebx, ebx
mov dword [ebp + 0x10], esi
call fcn.0040bd70
add esp, 0xc
test eax, eax
je 0x4151c9
jmp 0x415170
mov ecx, dword [ebp + 0x10]
cmp ecx, ebx
je case.0x414377.66
test eax, eax
jns 0x415187
lea ecx, [esi - 1]
mov dword [ebp + 0x10], ecx
jmp 0x41518a
lea ebx, [esi + 1]
cmp ecx, ebx
jl case.0x414377.66
mov eax, dword [ebp + 0x10]
sub eax, ebx
mov ecx, dword [ebp - 0x20]
cdq
sub eax, edx
mov esi, eax
sar esi, 1
add esi, ebx
lea eax, [esi + esi*2]
add eax, eax
add eax, eax
movzx edx, byte [eax + eax + str._tDtimespec]
add eax, eax
push edx
lea eax, [eax + 0x474aa1]
push eax
push ecx
call fcn.0040bd70
add esp, 0xc
test eax, eax
jne 0x415170
lea esi, [esi + esi*2]
add esi, esi
add esi, esi
movzx edx, byte [esi + esi + str._tDtimespec]
add esi, esi
dec edx
add dword [edi], edx
xor eax, eax
cmp byte [esi + 0x474aaf], 4
mov dword [ebp - 0x20], eax
jne 0x4151f6
mov eax, dword [ebp + 0x14]
add dword [eax], 4
mov eax, dword [eax]
mov eax, dword [eax - 4]
test byte [esi + 0x474ab0], 1
je 0x415225
lea ecx, [eax + 0x1000]
cmp ecx, 0x2000
jae 0x415225
mov edx, dword [ebp + 0xc]
push 6
push str._null_
push edx
call dword [ebp + 8]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [esi + 0x474ab4], 0
jne case.0x414377.66
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push eax
mov eax, dword [ebp + 0xc]
push ecx
mov ecx, dword [ebp + 8]
push str._lld_ns
push 0
push 0
push eax
push ecx
call fcn.004041e0
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, byte [eax]
mov dl, byte [eax + 1]
cmp cl, 0x61
sete bl
mov byte [ebp + 0x13], bl
cmp cl, 0x61
je 0x415275
cmp cl, 0x65
jne case.0x414377.66
add eax, 2
mov dword [edi], eax
cmp dl, 0x73
jne case.0x414377.66
mov dword [ebp - 0x18], str.____n_r
test bl, bl
jne 0x415295
mov dword [ebp - 0x18], 0x474a84
mov eax, dword [ebp + 0x14]
xor edx, edx
test bl, bl
setne dl
add dword [eax], 4
mov eax, dword [eax]
mov eax, dword [eax - 4]
mov dword [ebp - 8], eax
add eax, 0x1000
xor esi, esi
add edx, 5
mov dword [ebp - 0x20], edx
cmp eax, 0x2000
jae 0x4152c5
mov dword [ebp - 8], 0x474bd4
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp - 8]
push eax
push ecx
call fcn.0043d500
mov edi, dword [ebp + 0xc]
add esp, 8
test bl, bl
mov ebx, dword [ebp + 8]
mov dword [ebp - 4], eax
je 0x4152f1
push 1
push 0x474a80
push edi
call ebx
add esp, 0xc
mov esi, eax
test byte [ebp + 0x20], 2
jne 0x415326
mov ecx, dword [ebp + 0x18]
mov edx, dword [ebp - 4]
dec ecx
mov dword [ebp + 0x18], ecx
cmp ecx, edx
jl 0x415326
mov eax, ecx
sub eax, edx
inc eax
sub ecx, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp + 0x18], ecx
push 1
push 0x46896c
push edi
call ebx
add esp, 0xc
add esi, eax
dec dword [ebp - 0x1c]
jne 0x415312
xor eax, eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 4], eax
jle 0x415414
mov eax, 1
sub eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, byte [eax]
push ecx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x18]
push edx
push eax
call fcn.0043d480
add esp, 0xc
test eax, eax
je 0x4153ed
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0xc]
jge 0x415383
mov edx, dword [ebp - 0xc]
mov eax, ecx
sub edx, eax
add eax, dword [ebp - 8]
push edx
push eax
push edi
call ebx
add esp, 0xc
add esi, eax
mov edx, dword [ebp - 0x1c]
movsx eax, byte [edx]
add eax, 0xfffffff6
cmp eax, 0x34
ja case.0x415398.11
movzx eax, byte [eax + 0x415d84]
jmp dword [eax*4 + 0x415d64]
push 4
push str.lt_
jmp 0x4153dc
push 4
push str.gt_
jmp 0x4153dc
push 5
push str.amp_
jmp 0x4153dc
push 6
push str.apos_
jmp 0x4153dc
push 6
push str.quot_
jmp 0x4153dc
push 5
push str.xA_
jmp 0x4153dc
push 5
push str.xD_
push edi
call ebx
add esp, 0xc
add esi, eax
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 4]
jl 0x415342
cmp dword [ebp - 0x10], eax
jge 0x415414
mov ecx, dword [ebp - 0x10]
sub eax, ecx
add ecx, dword [ebp - 8]
push eax
push ecx
push edi
call ebx
add esp, 0xc
add esi, eax
mov eax, dword [ebp + 0x18]
dec eax
mov dword [ebp + 0x18], eax
cmp eax, dword [ebp - 4]
jl 0x41543b
sub eax, dword [ebp - 4]
inc eax
mov dword [ebp - 0x1c], eax
push 1
push 0x46896c
push edi
call ebx
add esp, 0xc
add esi, eax
dec dword [ebp - 0x1c]
jne 0x415427
cmp byte [ebp + 0x13], 0
je 0x415450
push 1
push 0x474a80
push edi
call ebx
add esp, 0xc
add esi, eax
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor edx, edx
mov ebx, eax
xor esi, esi
mov dword [ebp + 0x10], edx
mov cl, byte [ebx]
inc ebx
test cl, cl
je 0x415470
cmp cl, 0x5b
jne 0x415462
jmp 0x415479
cmp cl, 0x5b
jne case.0x414377.66
mov cl, byte [ebx]
test cl, cl
je 0x41548e
nop
cmp cl, 0x5d
je 0x415497
mov cl, byte [edx + ebx + 1]
inc edx
test cl, cl
jne 0x415480
cmp cl, 0x5d
jne case.0x414377.66
lea ecx, [edx + ebx + 1]
mov dword [edi], ecx
mov ecx, ebx
sub ecx, eax
cmp ecx, 4
jne 0x415450
cmp byte [eax], 0x78
jne 0x415450
cmp byte [eax + 1], 0x38
jne 0x415450
cmp byte [eax + 2], 0x36
jne 0x415450
cmp edx, 3
jne 0x415450
push edx
push ebx
push 0x474a44
call fcn.0040bd70
add esp, 0xc
test eax, eax
jne 0x4157a9
mov ecx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x14]
add dword [eax], 8
mov eax, dword [eax]
mov edi, dword [eax - 8]
mov eax, dword [eax - 4]
or ecx, 0x4000
mov dword [ebp + 0x20], ecx
or ecx, 4
push ecx
push 0xffffffffffffffff
push 8
push 0x10
push eax
lea edx, [ebp - 0x7c]
push edi
push edx
mov dword [ebp - 0x20], eax
call fcn.00403920
mov ebx, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x7c]
push eax
push ebx
call dword [ebp + 8]
mov esi, eax
mov eax, edi
and eax, 1
xor ecx, ecx
add esp, 0x28
or eax, ecx
je 0x415542
push 3
push 0x474a40
push ebx
mov dword [ebp + 0x10], 1
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffffe
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 2
xor ecx, ecx
or eax, ecx
je 0x41557b
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test ecx, ecx
jne 0x415563
push 0x474a3c
jmp 0x415568
push 0x474a38
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffffd
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 4
xor ecx, ecx
or eax, ecx
je 0x4155b4
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test edx, edx
jne 0x41559c
push 0x474a34
jmp 0x4155a1
push 0x474a30
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffffb
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 8
xor ecx, ecx
or eax, ecx
je 0x4155ed
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test ecx, ecx
jne 0x4155d5
push 0x474a2c
jmp 0x4155da
push 0x474a28
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffff7
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x10
xor ecx, ecx
or eax, ecx
je 0x415626
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test edx, edx
jne 0x41560e
push 0x474a24
jmp 0x415613
push 0x474a20
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffffffef
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x20
xor ecx, ecx
or eax, ecx
je 0x41565f
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test ecx, ecx
jne 0x415647
push 0x474a1c
jmp 0x41564c
push 0x474a18
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffffffdf
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x10000
xor ecx, ecx
or eax, ecx
je 0x41569d
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test edx, edx
jne 0x415682
push 0x474a14
jmp 0x415687
push 0x474a10
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffeffff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x40000
xor ecx, ecx
or eax, ecx
je 0x4156db
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test ecx, ecx
jne 0x4156c0
push 0x474a0c
jmp 0x4156c5
push 0x474a08
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffbffff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x20000000
xor ecx, ecx
or eax, ecx
je 0x415719
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test edx, edx
jne 0x4156fe
push 0x474a04
jmp 0x415703
push 0x474a00
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xdfffffff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x40000000
xor ecx, ecx
or eax, ecx
je 0x415757
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test ecx, ecx
jne 0x41573c
push 0x4749fc
jmp 0x415741
push 0x4749f8
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xbfffffff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x80000000
xor ecx, ecx
or eax, ecx
je 0x415bf2
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test edx, edx
jne 0x415790
push 0x4749f4
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0x7fffffff
jmp 0x415beb
push 0x4749f0
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0x7fffffff
jmp 0x415beb
push 3
push ebx
push 0x4749ec
call fcn.0040bd70
add esp, 0xc
test eax, eax
jne 0x415450
mov ecx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x14]
add dword [eax], 8
mov eax, dword [eax]
mov edi, dword [eax - 8]
mov eax, dword [eax - 4]
or ecx, 0x4000
mov dword [ebp + 0x20], ecx
or ecx, 4
push ecx
push 0xffffffffffffffff
push 8
push 0x10
push eax
lea edx, [ebp - 0x7c]
push edi
push edx
mov dword [ebp - 0x20], eax
call fcn.00403920
mov ebx, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x7c]
push eax
push ebx
call dword [ebp + 8]
mov esi, eax
mov eax, edi
and eax, 1
xor ecx, ecx
add esp, 0x28
or eax, ecx
je 0x415830
push 4
push str.VME
push ebx
mov dword [ebp + 0x10], 1
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffffe
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 2
xor ecx, ecx
or eax, ecx
je 0x415869
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 4
test ecx, ecx
jne 0x415851
push str.PVI
jmp 0x415856
push str._PVI
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffffd
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 4
xor ecx, ecx
or eax, ecx
je 0x4158a2
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 4
test edx, edx
jne 0x41588a
push str.TSD
jmp 0x41588f
push str._TSD
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffffb
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 8
xor ecx, ecx
or eax, ecx
je 0x4158db
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 3
test ecx, ecx
jne 0x4158c3
push 0x474a2c
jmp 0x4158c8
push 0x474a28
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffff7
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x10
xor ecx, ecx
or eax, ecx
je 0x415914
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 4
test edx, edx
jne 0x4158fc
push str.PSE
jmp 0x415901
push str._PSE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffffffef
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x20
xor ecx, ecx
or eax, ecx
je 0x41594d
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 4
test ecx, ecx
jne 0x415935
push str.PAE
jmp 0x41593a
push str._PAE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffffffdf
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x40
xor ecx, ecx
or eax, ecx
je 0x415986
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 4
test edx, edx
jne 0x41596e
push str.MCE
jmp 0x415973
push str._MCE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffffffbf
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x80
xor ecx, ecx
or eax, ecx
je 0x4159c4
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 4
test ecx, ecx
jne 0x4159a9
push str.PGE
jmp 0x4159ae
push str._PGE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffffff7f
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x100
xor ecx, ecx
or eax, ecx
je 0x415a02
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 4
test edx, edx
jne 0x4159e7
push str.PCE
jmp 0x4159ec
push str._PCE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffeff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x200
xor ecx, ecx
or eax, ecx
je 0x415a40
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 7
test ecx, ecx
jne 0x415a25
push str.OSFXSR
jmp 0x415a2a
push str._OSFXSR
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffdff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x400
xor ecx, ecx
or eax, ecx
je 0x415a7e
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 0xc
test edx, edx
jne 0x415a63
push str.OSXMMEEXCPT
jmp 0x415a68
push str._OSXMMEEXCPT
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffffbff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x2000
xor ecx, ecx
or eax, ecx
je 0x415abc
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 5
test ecx, ecx
jne 0x415aa1
push str.VMXE
jmp 0x415aa6
push str._VMXE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffffdfff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x4000
xor ecx, ecx
or eax, ecx
je 0x415afa
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 5
test edx, edx
jne 0x415adf
push str.SMXE
jmp 0x415ae4
push str._SMXE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffffbfff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x20000
xor ecx, ecx
or eax, ecx
je 0x415b38
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 6
test ecx, ecx
jne 0x415b1d
push str.PCIDE
jmp 0x415b22
push str._PCIDE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffdffff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x40000
xor ecx, ecx
or eax, ecx
je 0x415b76
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 8
test edx, edx
jne 0x415b5b
push str.OSXSAVE
jmp 0x415b60
push str._OSXSAVE
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xfffbffff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x100000
xor ecx, ecx
or eax, ecx
je 0x415bb4
mov eax, dword [ebp + 0x10]
mov ecx, eax
inc eax
mov dword [ebp + 0x10], eax
push 5
test ecx, ecx
jne 0x415b99
push str.SMEP
jmp 0x415b9e
push str._SMEP
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffefffff
mov dword [ebp - 0x20], 0
mov eax, edi
and eax, 0x200000
xor ecx, ecx
or eax, ecx
je 0x415bf2
mov eax, dword [ebp + 0x10]
mov edx, eax
inc eax
mov dword [ebp + 0x10], eax
push 5
test edx, edx
jne 0x415bd7
push str.SMAP
jmp 0x415bdc
push str._SMAP
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
and edi, 0xffdfffff
mov dword [ebp - 0x20], 0
mov eax, edi
or eax, dword [ebp - 0x20]
je 0x415c3b
cmp dword [ebp + 0x10], 0
mov eax, str.unkn
je 0x415c09
mov eax, str._unkn
push 6
push eax
push ebx
call dword [ebp + 8]
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp - 0x20]
push ecx
push 0xffffffffffffffff
push 1
push 0x10
push edx
add esi, eax
lea eax, [ebp - 0x7c]
push edi
push eax
call fcn.00403920
push eax
lea ecx, [ebp - 0x7c]
push ecx
push ebx
call dword [ebp + 8]
add esp, 0x34
add esi, eax
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], 0
je 0x415450
push 1
push 0x4748c8
push ebx
call dword [ebp + 8]
add esp, 0xc
add esi, eax
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret