Function at 0x1a72624
Capabilities:
Check for peb beingdebugged flag
Resolve function by parsing pe exports

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x10c
mov eax, dword [0x1acd344]
xor eax, esp
mov dword [esp + 0x108], eax
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
push ebx
mov dword [esp + 0x18], edx
mov ebx, 0x8000
xor edx, edx
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x1c]
push esi
mov byte [esp + 0x44], dl
mov byte [esp + 0x43], dl
mov byte [esp + 0x4b], dl
mov byte [esp + 0x45], dl
mov byte [esp + 0x4a], dl
mov byte [esp + 0x46], dl
mov byte [esp + 0x52], dl
mov byte [esp + 0x47], dl
mov byte [esp + 0x48], dl
mov byte [esp + 0x49], dl
mov dword [esp + 0x8c], edx
mov dword [esp + 0x54], edx
mov dword [esp + 0x60], edx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], edx
mov dword [esp + 0x64], edx
mov byte [esp + 0x78], dl
mov byte [esp + 0x9c], dl
mov byte [esp + 0x53], dl
mov dword [esp + 0x90], edx
movzx edx, word [ecx + 2]
push edi
mov edi, edx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], ebx
and edi, 0x10
jne 0x1a726df
xor esi, esi
mov dword [esp + 0x1c], esi
jmp 0x1a726fa
mov eax, dword [ecx + 0xc]
test dx, dx
jns 0x1a726f4
test eax, eax
je 0x1a726d7
lea esi, [eax + ecx]
mov dword [esp + 0x1c], esi
jmp 0x1a726f8
mov dword [esp + 0x1c], eax
xor esi, esi
mov ecx, dword [esp + 0x38]
mov ecx, dword [ecx]
movzx eax, word [ecx + 2]
not al
test al, 0x10
jne 0x1a7271d
movzx eax, word [ecx + 2]
test ax, ax
mov eax, dword [ecx + 0xc]
jns 0x1a72723
test eax, eax
je 0x1a7271d
lea esi, [eax + ecx]
mov dword [esp + 0x10], esi
jmp 0x1a72727
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x60], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x28], eax
movzx eax, word [ecx + 2]
shr ax, 0xf
test al, al
jne 0x1a72754
mov esi, 0xc00000e7
jmp 0x1a73757
mov esi, dword [esp + 0x20]
mov al, dl
shr al, 7
and esi, 0x100
and al, 1
mov byte [esp + 0x84], al
mov al, dl
shr al, 6
and al, 1
mov byte [esp + 0x5f], al
mov eax, dword [esp + 0x20]
and eax, 0x80
test dword [esp + 0x20], 0x10000
je 0x1a727e5
or dword [esp + 0x20], 0x1ff
test eax, eax
mov eax, dword [esp + 0x20]
jne 0x1a727a3
and eax, 0xffffff7f
mov dword [esp + 0x20], eax
test esi, esi
jne 0x1a727b0
and eax, 0xfffffeff
mov dword [esp + 0x20], eax
cmp dword [esp + 0x10], 0
jne 0x1a727e5
cmp dword [esp + 0x1c], 0
jne 0x1a727e5
and eax, 0xfffffe07
mov dword [esp + 0x20], eax
test di, di
je 0x1a727d5
or eax, 8
mov dword [esp + 0x20], eax
jmp 0x1a727e5
mov eax, edx
shr eax, 0xb
test al, 1
je 0x1a727e5
xor eax, eax
inc eax
mov byte [esp + 0x57], al
mov eax, dword [esp + 0x20]
test al, 1
je 0x1a728b4
shr eax, 2
not al
and eax, 0xffffff01
mov dword [esp + 0xa0], eax
test dx, dx
jns 0x1a7281f
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx + 4]
test eax, eax
jne 0x1a7281a
mov esi, eax
mov dword [esp + 0x3c], eax
jmp 0x1a7282a
lea esi, [eax + ecx]
jmp 0x1a72826
mov eax, dword [esp + 0x24]
mov esi, dword [eax + 4]
mov dword [esp + 0x3c], esi
xor eax, eax
inc eax
test byte [ebp + 0x10], 8
mov byte [esp + 0x47], al
jne 0x1a728d4
mov edi, dword [esp + 0x30]
test edi, edi
je 0x1a728aa
lea eax, [esp + 0xa4]
push eax
push 0x38
lea eax, [esp + 0xb0]
push eax
push 0xa
push edi
call fcn.01a22b70
mov esi, eax
mov dword [esp + 0x34], esi
test esi, esi
js 0x1a73757
push 2
pop ecx
cmp dword [esp + 0xc0], ecx
jne 0x1a7288d
xor eax, eax
inc eax
cmp dword [esp + 0xc4], eax
jge 0x1a7288d
mov esi, 0xc00000a5
jmp 0x1a73757
mov esi, dword [esp + 0x3c]
lea eax, [esp + 0x34]
push eax
push dword [esp + 0x88]
mov edx, esi
mov ecx, edi
call fcn.019d6bc3
test al, al
jne 0x1a728d4
mov esi, 0xc000005a
jmp 0x1a73757
movzx eax, word [ecx + 2]
test ax, ax
jns 0x1a728c9
mov eax, dword [ecx + 4]
test eax, eax
je 0x1a728aa
lea esi, [eax + ecx]
jmp 0x1a728cc
mov esi, dword [ecx + 4]
mov dword [esp + 0x3c], esi
test esi, esi
jmp 0x1a728a8
push esi
call fcn.019ecb60
test al, al
je 0x1a728aa
push 2
pop eax
xor esi, esi
test byte [esp + 0x20], al
je 0x1a72913
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx + 8]
cmp word [ecx + 2], si
jge 0x1a72902
test eax, eax
jne 0x1a72900
mov dword [esp + 0x40], esi
jmp 0x1a72906
add eax, ecx
mov dword [esp + 0x40], eax
xor eax, eax
inc eax
mov byte [esp + 0x48], al
mov eax, dword [esp + 0x40]
jmp 0x1a72935
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
cmp word [eax + 2], si
jge 0x1a7292e
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x1a7367b
add eax, ecx
jmp 0x1a72931
mov eax, dword [eax + 8]
mov dword [esp + 0x40], eax
test eax, eax
je 0x1a7367b
push eax
call fcn.019ecb60
test al, al
jne 0x1a72951
mov esi, 0xc000005b
jmp 0x1a73757
mov eax, dword [esp + 0x20]
test eax, 0x1f8
je 0x1a73100
and eax, 0x10
mov dword [esp + 0x98], eax
je 0x1a72a5c
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x30]
lea eax, [esp + 0x2c]
push eax
push 0x11
push dword [esp + 0x24]
call fcn.019e66f0
mov edi, eax
test edi, edi
je 0x1a729a9
test dword [edi + 4], 0xfffffff8
lea eax, [edi + 8]
mov cl, byte [edi + 1]
mov dword [esp + 0x68], eax
mov byte [esp + 0x7c], cl
jne 0x1a72a52
test esi, esi
je 0x1a729f3
lea eax, [esp + 0xa4]
push eax
push 0x38
lea eax, [esp + 0xb0]
push eax
push 0xa
push esi
call fcn.01a22b70
mov esi, eax
mov dword [esp + 0x34], esi
test esi, esi
js 0x1a73757
push 2
pop eax
cmp dword [esp + 0xc0], eax
jne 0x1a72a0f
xor eax, eax
inc eax
cmp dword [esp + 0xc4], eax
jl 0x1a72883
jmp 0x1a72a0f
lea eax, [esp + 0x60]
push eax
push 8
push 0xffffffffffffffff
call fcn.01a23b30
mov esi, eax
mov dword [esp + 0x34], esi
test esi, esi
js 0x1a73757
mov esi, dword [esp + 0x30]
mov ecx, esi
test esi, esi
jne 0x1a72a1d
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x68]
lea eax, [esp + 0x34]
push eax
push dword [esp + 0x80]
call fcn.01a73770
push dword [esp + 0x60]
test al, al
je 0x1a72a4d
call fcn.01a22a30
inc dword [esp + 0x2c]
test edi, edi
jne 0x1a72978
jmp 0x1a72a60
call fcn.01a22a30
mov esi, 0xc0000446
jmp 0x1a73757
mov esi, dword [esp + 0x30]
lea edx, [esp + 0x6c]
mov ecx, esi
call fcn.019e2e43
mov esi, eax
mov dword [esp + 0x34], esi
test esi, esi
js 0x1a73757
mov edi, dword [esp + 0x6c]
mov ecx, dword [esp + 0x20]
mov edx, ecx
and edx, 0x80
mov dword [esp + 0x68], edx
mov eax, dword [edi]
mov dword [esp + 0x30], eax
je 0x1a72afa
test eax, eax
jne 0x1a72aab
mov esi, 0xc0000022
push edi
xor eax, eax
push eax
push dword [esp + 0x30]
jmp 0x1a73752
xor eax, eax
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x2c]
push eax
push 0x14
push dword [esp + 0x24]
call fcn.019e66f0
mov esi, eax
test esi, esi
je 0x1a72aea
test dword [esi + 4], 0xff000000
jne 0x1a72f0a
lea eax, [esp + 0x34]
push eax
push ecx
mov ecx, dword [esp + 0x38]
lea edx, [esi + 8]
call fcn.01a7389e
test al, al
je 0x1a72a99
inc dword [esp + 0x2c]
test esi, esi
jne 0x1a72ab1
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x20]
and ecx, 0x100
mov dword [esp + 0x7c], ecx
je 0x1a72b36
mov ecx, dword [esp + 0x1c]
mov edx, eax
call fcn.019e32cf
mov esi, eax
test esi, esi
js 0x1a72a9e
push 2
pop eax
test byte [ebp + 0x10], al
jne 0x1a72b36
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
call fcn.019e32cf
mov esi, eax
test esi, esi
js 0x1a72a9e
push edi
mov edi, dword [esp + 0x2c]
xor eax, eax
push eax
push edi
call fcn.019f1440
mov edx, dword [esp + 0x20]
mov dword [esp + 0x6c], 0xa00
test dl, 8
je 0x1a72f69
push 2
pop ebx
test byte [ebp + 0x10], bl
je 0x1a72f28
mov eax, dword [esp + 0x24]
movzx ecx, word [eax + 2]
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
movzx esi, word [eax + 2]
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x84]
mov edx, esi
push eax
push ebx
push dword [ebp + 0x18]
mov eax, ecx
shr edx, 1
push dword [esp + 0x50]
shr eax, 1
mov ebx, 0x2800
push dword [esp + 0x50]
and eax, 0x18
and ecx, ebx
or eax, ecx
and edx, 0x18
mov ecx, dword [esp + 0x28]
and esi, ebx
shr eax, 1
or edx, esi
push eax
push dword [esp + 0x38]
shr edx, 1
call fcn.01a7156c
mov esi, eax
test esi, esi
js 0x1a72f14
mov edx, dword [esp + 0x20]
xor eax, eax
mov ecx, dword [esp + 0x24]
inc eax
mov esi, dword [esp + 0x1c]
mov byte [esp + 0x4a], al
mov eax, dword [esp + 0x50]
mov ebx, eax
and ebx, 8
and eax, 0x1400
or ebx, 0x2004
add ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x80]
add ebx, ebx
mov dword [esp + 0x34], eax
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x30], 0xffffefff
test dl, 0x20
je 0x1a72fb1
movzx ecx, word [ecx + 2]
push 2
pop eax
test byte [ebp + 0x10], al
je 0x1a72f7e
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
movzx esi, word [eax + 2]
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x1c]
mov edx, esi
push eax
push 2
pop eax
push eax
push dword [ebp + 0x18]
mov eax, ecx
shr edx, 1
push dword [esp + 0x50]
shr eax, 1
and ecx, 0x800
push dword [esp + 0x50]
and eax, 0x18
and edx, 0x18
or eax, ecx
and esi, 0x800
mov ecx, dword [esp + 0x28]
or edx, esi
shr eax, 1
and eax, dword [esp + 0x48]
push eax
push dword [esp + 0x38]
shr edx, 1
and edx, dword [esp + 0x50]
call fcn.01a7156c
mov esi, eax
test esi, esi
js 0x1a72f1f
mov esi, dword [esp + 0x18]
xor eax, eax
mov edx, dword [esp + 0x20]
inc eax
mov byte [esp + 0x56], al
mov eax, dword [esp + 0x50]
mov ecx, eax
and ecx, 8
mov dword [esp + 0x18], esi
or ecx, 4
and eax, 0x1400
add ecx, ecx
or ecx, eax
add ecx, ecx
or ebx, ecx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x10]
test dl, 0x40
je 0x1a72ff9
push 2
pop edx
test byte [ebp + 0x10], dl
je 0x1a72fba
mov eax, dword [esp + 0x24]
movzx ecx, word [eax + 2]
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
movzx esi, word [eax + 2]
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x74]
push eax
push edx
push dword [ebp + 0x18]
mov eax, ecx
mov edx, esi
push dword [esp + 0x50]
shr eax, 1
and ecx, 0x800
push dword [esp + 0x50]
and eax, 0x18
shr edx, 1
or eax, ecx
and edx, 0x18
mov ecx, dword [esp + 0x28]
and esi, 0x800
shr eax, 1
or edx, esi
and eax, dword [esp + 0x48]
push eax
push dword [esp + 0x38]
shr edx, 1
and edx, dword [esp + 0x50]
call fcn.01a7156c
mov esi, eax
test esi, esi
js 0x1a72f1f
mov edx, dword [esp + 0x24]
xor eax, eax
mov esi, dword [esp + 0x1c]
inc eax
mov byte [esp + 0x4b], al
mov eax, dword [esp + 0x50]
mov ecx, eax
and ecx, 8
and eax, 0x1400
or ecx, 4
add ecx, ecx
or ecx, eax
add ecx, ecx
or ebx, ecx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x68], 0
je 0x1a73039
movzx ecx, word [edx + 2]
push 2
pop eax
test byte [ebp + 0x10], al
je 0x1a7300a
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
movzx esi, word [eax + 2]
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x78]
mov edx, esi
push eax
push 2
pop eax
push eax
push dword [ebp + 0x18]
mov eax, ecx
shr edx, 1
push dword [esp + 0x50]
shr eax, 1
and ecx, 0x800
push dword [esp + 0x50]
and eax, 0x18
and edx, 0x18
or eax, ecx
and esi, 0x800
mov ecx, dword [esp + 0x28]
or edx, esi
shr eax, 1
and eax, dword [esp + 0x48]
push eax
push dword [esp + 0x38]
shr edx, 1
and edx, dword [esp + 0x50]
call fcn.01a7156c
mov esi, eax
test esi, esi
js 0x1a72f1f
xor eax, eax
inc eax
mov byte [esp + 0x4c], al
mov eax, dword [esp + 0x50]
mov ecx, eax
and ecx, 8
and eax, 0x1400
or ecx, 4
add ecx, ecx
or ecx, eax
add ecx, ecx
or ebx, ecx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x7c], 0
je 0x1a73081
push 2
pop edx
test byte [ebp + 0x10], dl
je 0x1a73042
mov eax, dword [esp + 0x24]
movzx ecx, word [eax + 2]
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
movzx esi, word [eax + 2]
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x7c]
push eax
push edx
push dword [ebp + 0x18]
mov eax, ecx
mov edx, esi
push dword [esp + 0x50]
shr eax, 1
and ecx, 0x800
push dword [esp + 0x50]
and eax, 0x18
shr edx, 1
or eax, ecx
and edx, 0x18
mov ecx, dword [esp + 0x28]
and esi, 0x800
shr eax, 1
or edx, esi
and eax, dword [esp + 0x48]
push eax
push dword [esp + 0x38]
shr edx, 1
and edx, dword [esp + 0x50]
call fcn.01a7156c
mov esi, eax
test esi, esi
js 0x1a72f1f
mov edx, dword [esp + 0x24]
xor eax, eax
mov esi, dword [esp + 0x1c]
inc eax
mov byte [esp + 0x4d], al
mov eax, dword [esp + 0x50]
mov ecx, eax
and ecx, 8
and eax, 0x1400
or ecx, 4
add ecx, ecx
or ecx, eax
add ecx, ecx
or ebx, ecx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x98], 0
je 0x1a73092
movzx ecx, word [edx + 2]
mov eax, ecx
and eax, 0x2000
or eax, 0x10
or ebx, eax
mov eax, 0xa00
and ecx, eax
mov dword [esp + 0x14], ebx
cmp cx, ax
jne 0x1a73094
or ebx, 0x800
mov dword [esp + 0x14], ebx
jmp 0x1a73094
mov esi, 0xc0000446
jmp 0x1a72a9e
mov edi, dword [esp + 0x80]
mov dword [esp + 0x34], edi
mov edi, dword [esp + 0x18]
jmp 0x1a736aa
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x34], esi
movzx eax, word [ecx + 2]
mov ebx, eax
and eax, 0xa00
and ebx, 0x2000
or ebx, 0x8010
mov dword [esp + 0x14], ebx
cmp ax, word [esp + 0x6c]
jne 0x1a72c03
or ebx, 0x800
mov dword [esp + 0x14], ebx
jmp 0x1a72c03
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x34], eax
jmp 0x1a72c07
mov eax, ecx
mov dword [esp + 0x18], esi
and eax, 0x2000
or eax, 0x10
or ebx, eax
mov eax, 0xa00
and ecx, eax
mov dword [esp + 0x14], ebx
cmp cx, ax
jne 0x1a72cbd
or ebx, 0x800
mov dword [esp + 0x14], ebx
jmp 0x1a72cbd
mov dword [esp + 0x18], eax
jmp 0x1a72cc1
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x70], esi
movzx ecx, word [edx + 2]
mov eax, ecx
and eax, 0x2000
or eax, 0x10
or ebx, eax
mov eax, 0xa00
and ecx, eax
mov dword [esp + 0x14], ebx
cmp cx, ax
jne 0x1a72d6c
or ebx, 0x800
mov dword [esp + 0x14], ebx
jmp 0x1a72d6c
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x70], eax
jmp 0x1a72d70
mov eax, ecx
mov dword [esp + 0x74], esi
and eax, 0x2000
or eax, 0x10
or ebx, eax
mov eax, 0xa00
and ecx, eax
mov dword [esp + 0x14], ebx
cmp cx, ax
jne 0x1a72e14
or ebx, 0x800
jmp 0x1a72e10
mov dword [esp + 0x74], eax
jmp 0x1a72e18
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x78], esi
movzx ecx, word [edx + 2]
mov eax, ecx
and eax, 0x2000
or eax, 0x10
or ebx, eax
mov eax, 0xa00
and ecx, eax
mov dword [esp + 0x14], ebx
cmp cx, ax
jne 0x1a72ec5
or ebx, 0x800
mov dword [esp + 0x14], ebx
jmp 0x1a72ec5
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x78], eax
jmp 0x1a72ec9
mov esi, eax
mov ecx, dword [esp + 0x34]
xor eax, eax
push eax
lea eax, [esp + 0x68]
mov edx, esi
push eax
push dword [esp + 0x80]
push dword [esp + 0x80]
push dword [esp + 0x80]
push dword [esp + 0x2c]
call fcn.019e2fa5
mov esi, eax
test esi, esi
js 0x1a72f1f
cmp dword [esp + 0x34], 0
mov edx, dword [esp + 0x64]
mov dword [esp + 0x58], edx
jne 0x1a730f3
test edx, edx
je 0x1a730f3
xor esi, esi
cmp word [edx + 4], si
jne 0x1a730f3
push edx
push esi
push edi
call fcn.019f1440
mov edx, esi
mov dword [esp + 0x58], edx
xor eax, eax
inc eax
mov byte [esp + 0x4e], al
mov eax, dword [esp + 0x20]
jmp 0x1a7311b
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x58], edx
mov dword [esp + 0x18], ecx
test al, 4
je 0x1a73312
xor eax, eax
inc eax
test byte [ebp + 0x10], al
je 0x1a731e3
mov edi, dword [esp + 0x24]
movzx ecx, word [edi + 2]
mov al, cl
not al
test al, 4
je 0x1a73145
xor eax, eax
mov esi, eax
jmp 0x1a73159
test cx, cx
jns 0x1a73156
mov eax, dword [edi + 0x10]
test eax, eax
je 0x1a7313f
lea esi, [edi + eax]
jmp 0x1a73159
mov esi, dword [edi + 0x10]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax]
movzx edx, word [ecx + 2]
mov al, dl
not al
test al, 4
je 0x1a73171
xor eax, eax
mov ecx, eax
jmp 0x1a73184
test dx, dx
jns 0x1a73181
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x1a7316b
add ecx, eax
jmp 0x1a73184
mov ecx, dword [ecx + 0x10]
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x94]
push eax
xor eax, eax
inc eax
push eax
push dword [ebp + 0x18]
movzx eax, word [edi + 2]
push dword [esp + 0x50]
and eax, 0x140c
push dword [esp + 0x50]
push eax
mov eax, 0x140c
push esi
and edx, eax
call fcn.01a7156c
mov esi, eax
test esi, esi
js 0x1a72f1f
mov edi, dword [esp + 0x90]
xor eax, eax
inc eax
mov dword [esp + 0x2c], edi
mov byte [esp + 0x49], al
mov eax, dword [esp + 0x50]
and eax, 0x1408
or eax, 4
or ebx, eax
jmp 0x1a7323b
mov edx, dword [esp + 0x24]
movzx ecx, word [edx + 2]
mov al, cl
not al
test al, 4
je 0x1a731f9
xor eax, eax
mov edi, eax
jmp 0x1a73215
test cx, cx
jns 0x1a73212
mov eax, dword [edx + 0x10]
test eax, eax
jne 0x1a7320d
mov edi, eax
mov dword [esp + 0x2c], eax
jmp 0x1a73219
lea edi, [edx + eax]
jmp 0x1a73215
mov edi, dword [edx + 0x10]
mov dword [esp + 0x2c], edi
mov eax, ecx
and eax, 0x1000
or eax, 4
or ebx, eax
mov eax, 0x500
and ecx, eax
mov dword [esp + 0x14], ebx
cmp cx, ax
jne 0x1a7323f
or ebx, 0x400
mov dword [esp + 0x14], ebx
cmp byte [esp + 0x84], 0
je 0x1a7330c
mov eax, dword [0x1ac7bfc]
push 0x48
pop ecx
push ecx
add eax, 0x140000
mov dword [esp + 0xa0], ecx
push eax
push dword [esp + 0x30]
call fcn.019f3940
mov ebx, eax
test ebx, ebx
jne 0x1a7327c
mov esi, 0xc0000017
jmp 0x1a7368b
lea eax, [esp + 0x60]
push eax
push 8
push 0xffffffffffffffff
call fcn.01a23b30
mov esi, eax
test esi, esi
jns 0x1a732a3
push ebx
mov ebx, dword [esp + 0x2c]
xor eax, eax
push eax
push ebx
call fcn.019f1440
jmp 0x1a7368f
lea eax, [esp + 0x9c]
push eax
push dword [esp + 0xa0]
push ebx
push 4
push dword [esp + 0x70]
call fcn.01a22b70
push dword [esp + 0x60]
mov esi, eax
call fcn.01a22a30
test esi, esi
js 0x1a73290
mov dl, byte [esp + 0x5f]
lea eax, [esp + 0x4f]
push eax
lea eax, [esp + 0x98]
mov ecx, edi
push eax
push dword [ebx]
call fcn.01a7221c
push ebx
mov ebx, dword [esp + 0x2c]
mov esi, eax
xor eax, eax
push eax
push ebx
call fcn.019f1440
test esi, esi
js 0x1a7368f
mov esi, dword [esp + 0x94]
mov edx, dword [esp + 0x58]
jmp 0x1a7333d
mov esi, dword [esp + 0x2c]
jmp 0x1a73306
mov eax, dword [esp + 0x38]
mov esi, dword [eax]
movzx ecx, word [esi + 2]
mov al, cl
not al
test al, 4
je 0x1a7332a
xor ebx, ebx
mov esi, ebx
jmp 0x1a7333f
test cx, cx
jns 0x1a7333a
mov eax, dword [esi + 0x10]
test eax, eax
je 0x1a73324
add esi, eax
jmp 0x1a7333d
mov esi, dword [esi + 0x10]
xor ebx, ebx
mov eax, dword [esp + 0x3c]
movzx eax, byte [eax + 1]
lea eax, [eax*4 + 8]
mov dword [esp + 0x68], eax
add eax, 3
and eax, 0xfffffffc
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x40]
movzx eax, byte [eax + 1]
lea edi, [eax*4 + 0xb]
and edi, 0xfffffffc
lea ecx, [eax*4 + 8]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x7c], edi
test edx, edx
je 0x1a73394
movzx edx, word [edx + 2]
add edx, 3
and edx, 0xfffffffc
mov dword [esp + 0x64], edx
jmp 0x1a7339a
mov edx, ebx
mov dword [esp + 0x64], ebx
test esi, esi
je 0x1a733a8
movzx ebx, word [esi + 2]
add ebx, 3
and ebx, 0xfffffffc
mov ecx, dword [0x1ac7bfc]
lea eax, [ebx + edx]
mov edx, dword [esp + 0x6c]
add eax, edi
add edx, 0x14
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x28]
add eax, edx
push eax
add ecx, 0x140000
push ecx
push ebx
call fcn.019f3940
mov edi, eax
test edi, edi
jne 0x1a733e5
mov esi, 0xc0000017
jmp 0x1a7368f
mov ecx, edi
call fcn.019e2c95
cmp byte [esp + 0x57], 0
lea ebx, [edi + 0x14]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], ebx
je 0x1a73407
or eax, 0x800
mov dword [esp + 0x14], eax
or word [edi + 2], ax
mov edx, 0x4000
mov eax, dword [esp + 0x24]
mov cx, word [edi + 2]
test word [eax + 2], dx
je 0x1a7342a
mov al, byte [eax + 1]
or ecx, edx
mov byte [edi + 1], al
mov word [edi + 2], cx
mov ecx, dword [esp + 0x58]
test ecx, ecx
jne 0x1a73439
xor edx, edx
mov dword [edi + 0xc], edx
jmp 0x1a73487
movzx eax, word [ecx + 2]
push eax
push ecx
push ebx
call fcn.01a287e0
mov edx, dword [ebp + 0x18]
add esp, 0xc
mov ecx, ebx
call fcn.019d3986
mov eax, dword [esp + 0x58]
mov dword [edi + 0xc], 0x14
movzx ecx, word [eax + 2]
mov eax, dword [esp + 0x64]
cmp eax, ecx
jbe 0x1a7347f
sub eax, ecx
push eax
xor eax, eax
push eax
lea eax, [ecx + ebx]
push eax
call fcn.01a28e60
mov eax, dword [esp + 0x70]
add esp, 0xc
add ebx, eax
xor edx, edx
mov dword [esp + 0x30], ebx
test byte [esp + 0x14], 0x10
jne 0x1a734a4
mov eax, dword [esp + 0x38]
mov ecx, 0x2830
mov eax, dword [eax]
mov ax, word [eax + 2]
and ax, cx
or word [edi + 2], ax
test esi, esi
jne 0x1a734ad
mov dword [edi + 0x10], edx
jmp 0x1a734f6
movzx eax, word [esi + 2]
push eax
push esi
push ebx
call fcn.01a287e0
mov edx, dword [ebp + 0x18]
add esp, 0xc
mov ecx, ebx
call fcn.019d3986
mov eax, ebx
sub eax, edi
mov dword [edi + 0x10], eax
movzx ecx, word [esi + 2]
mov esi, dword [esp + 0x84]
cmp esi, ecx
jbe 0x1a734f0
mov eax, esi
sub eax, ecx
push eax
xor eax, eax
push eax
lea eax, [ecx + ebx]
push eax
call fcn.01a28e60
add esp, 0xc
add ebx, esi
mov dword [esp + 0x30], ebx
test byte [esp + 0x14], 4
jne 0x1a735bd
mov eax, dword [esp + 0x38]
mov ecx, 0x140c
mov eax, dword [eax]
mov ax, word [eax + 2]
and ax, cx
or word [edi + 2], ax
cmp byte [esp + 0xa0], 0
je 0x1a735bd
xor eax, eax
mov dword [esp + 0x88], 0
inc eax
mov word [esp + 0x8c], 0x300
push eax
lea eax, [esp + 0x8c]
push eax
lea eax, [esp + 0xec]
push eax
call fcn.019e62a0
mov esi, eax
test esi, esi
js 0x1a7368b
xor ebx, ebx
mov dword [esp + 0xec], 4
mov dword [esp + 0x2c], ebx
movzx ecx, word [edi + 2]
mov al, cl
not al
test al, 4
je 0x1a7357e
mov ecx, ebx
jmp 0x1a73592
test cx, cx
jns 0x1a7358f
mov eax, dword [edi + 0x10]
test eax, eax
je 0x1a7357a
lea ecx, [eax + edi]
jmp 0x1a73592
mov ecx, dword [edi + 0x10]
lea eax, [esp + 0x2c]
push eax
lea edx, [esp + 0xe8]
call fcn.01a74a5f
test eax, eax
je 0x1a735b9
mov cl, byte [eax + 1]
and cl, 0xfc
or cl, 8
inc dword [esp + 0x2c]
mov byte [eax + 1], cl
jmp 0x1a7356e
mov ebx, dword [esp + 0x30]
push dword [esp + 0x68]
push dword [esp + 0x40]
push ebx
call fcn.01a287e0
mov esi, dword [esp + 0x78]
add esp, 0xc
mov ecx, dword [esp + 0x68]
cmp ecx, esi
jae 0x1a735ee
mov eax, esi
sub eax, ecx
push eax
xor eax, eax
push eax
lea eax, [ebx + ecx]
push eax
call fcn.01a28e60
add esp, 0xc
mov eax, ebx
add ebx, esi
sub eax, edi
cmp byte [esp + 0x47], 0
mov dword [edi + 4], eax
jne 0x1a73612
mov eax, dword [esp + 0x38]
xor ecx, ecx
inc ecx
mov eax, dword [eax]
mov ax, word [eax + 2]
and ax, cx
or word [edi + 2], ax
mov esi, dword [esp + 0x98]
push esi
push dword [esp + 0x44]
push ebx
call fcn.01a287e0
mov eax, dword [esp + 0x88]
add esp, 0xc
cmp esi, eax
jae 0x1a73644
sub eax, esi
push eax
xor eax, eax
push eax
lea eax, [ebx + esi]
push eax
call fcn.01a28e60
add esp, 0xc
mov esi, dword [esp + 0x38]
sub ebx, edi
cmp byte [esp + 0x48], 0
mov dword [edi + 8], ebx
jne 0x1a73664
mov eax, dword [esi]
push 2
pop ecx
mov ax, word [eax + 2]
and ax, cx
or word [edi + 2], ax
push dword [esi]
mov ebx, dword [esp + 0x2c]
xor eax, eax
push eax
push ebx
call fcn.019f1440
xor eax, eax
mov dword [esi], edi
mov esi, eax
jmp 0x1a73691
mov ebx, dword [esp + 0x80]
mov esi, 0xc000005b
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x28]
xor eax, eax
mov edi, dword [esp + 0x18]
cmp byte [esp + 0x49], 0
je 0x1a736aa
push dword [esp + 0x90]
push eax
push ebx
call fcn.019f1440
mov eax, dword [esp + 0x34]
mov ebx, dword [esp + 0x28]
test eax, eax
je 0x1a736c7
cmp byte [esp + 0x4a], 0
je 0x1a736c7
push eax
xor eax, eax
push eax
push ebx
call fcn.019f1440
test edi, edi
je 0x1a736de
cmp byte [esp + 0x56], 0
je 0x1a736de
push edi
xor edi, edi
push edi
push ebx
call fcn.019f1440
jmp 0x1a736e0
xor edi, edi
cmp dword [esp + 0x70], 0
je 0x1a736f9
cmp byte [esp + 0x4b], 0
je 0x1a736f9
push dword [esp + 0x70]
push edi
push ebx
call fcn.019f1440
cmp dword [esp + 0x74], 0
je 0x1a73712
cmp byte [esp + 0x4c], 0
je 0x1a73712
push dword [esp + 0x74]
push edi
push ebx
call fcn.019f1440
cmp dword [esp + 0x78], 0
je 0x1a7372b
cmp byte [esp + 0x4d], 0
je 0x1a7372b
push dword [esp + 0x78]
push edi
push ebx
call fcn.019f1440
mov eax, dword [esp + 0x58]
test eax, eax
je 0x1a73742
cmp byte [esp + 0x4e], 0
je 0x1a73742
push eax
push edi
push ebx
call fcn.019f1440
cmp byte [esp + 0x4f], 0
je 0x1a73757
push dword [esp + 0x94]
push edi
push ebx
call fcn.019f1440
mov ecx, dword [esp + 0x114]
mov eax, esi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.01a24a40
mov esp, ebp
pop ebp
ret 0x18