Function at 0x1010f040
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101578f0
mov eax, dword fs:[0]
push eax
sub esp, 0x87c
mov eax, dword [0x101a5034]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x62c], 0
mov dword [ebp - 0x630], 0
push 0x1017bd8c
mov eax, dword [ebp + 8]
push eax
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x664], eax
cmp dword [ebp - 0x664], 0
jne 0x1010f0e5
push 0x1015e4ca
lea ecx, [ebp - 0xa0]
call fcn.1000ccc0
mov dword [ebp - 0x7f4], eax
mov ecx, dword [ebp - 0x7f4]
mov dword [ebp - 0x7d0], ecx
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x62c]
or edx, 1
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x7d0]
mov dword [ebp - 0x708], eax
jmp 0x1010f13f
mov ecx, dword [ebp - 0x664]
cmp dword [ecx + 0x10], 0
jne 0x1010f0fd
mov dword [ebp - 0x6a0], 0x1015e4cb
jmp 0x1010f10c
mov edx, dword [ebp - 0x664]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x6a0], eax
mov ecx, dword [ebp - 0x6a0]
push ecx
lea ecx, [ebp - 0x118]
call fcn.1000ccc0
mov dword [ebp - 0x864], eax
mov edx, dword [ebp - 0x62c]
or edx, 2
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x864]
mov dword [ebp - 0x708], eax
mov ecx, dword [ebp - 0x708]
mov dword [ebp - 0x7d8], ecx
mov edx, dword [ebp - 0x7d8]
push edx
lea ecx, [ebp - 0x40]
call fcn.1000ca30
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0x62c]
and eax, 2
je 0x1010f17e
and dword [ebp - 0x62c], 0xfffffffd
lea ecx, [ebp - 0x118]
call fcn.1000cd00
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x62c]
and ecx, 1
je 0x1010f19f
and dword [ebp - 0x62c], 0xfffffffe
lea ecx, [ebp - 0xa0]
call fcn.1000cd00
mov dword [ebp - 0x644], str.mailMsg
lea ecx, [ebp - 0x40]
call fcn.1000c9b0
mov dword [ebp - 0x640], eax
mov edx, dword [ebp - 0x640]
mov al, byte [edx]
mov byte [ebp - 0x636], al
mov ecx, dword [ebp - 0x644]
cmp al, byte [ecx]
jne 0x1010f215
cmp byte [ebp - 0x636], 0
je 0x1010f209
mov edx, dword [ebp - 0x640]
mov al, byte [edx + 1]
mov byte [ebp - 0x634], al
mov ecx, dword [ebp - 0x644]
cmp al, byte [ecx + 1]
jne 0x1010f215
add dword [ebp - 0x640], 2
add dword [ebp - 0x644], 2
cmp byte [ebp - 0x634], 0
jne 0x1010f1b7
mov dword [ebp - 0x710], 0
jmp 0x1010f220
sbb edx, edx
or edx, 1
mov dword [ebp - 0x710], edx
mov eax, dword [ebp - 0x710]
mov dword [ebp - 0x82c], eax
cmp dword [ebp - 0x82c], 0
jne 0x101104de
lea ecx, [ebp - 0x628]
call fcn.101109b0
mov byte [ebp - 4], 3
push 0x1017bd9c
mov ecx, dword [ebp + 8]
push ecx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x66c], eax
cmp dword [ebp - 0x66c], 0
jne 0x1010f2ab
push 0x1015e50b
lea ecx, [ebp - 0x388]
call fcn.1000ccc0
mov dword [ebp - 0x738], eax
mov edx, dword [ebp - 0x738]
mov dword [ebp - 0x740], edx
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x62c]
or eax, 4
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x740]
mov dword [ebp - 0x720], ecx
jmp 0x1010f305
mov edx, dword [ebp - 0x66c]
cmp dword [edx + 0x10], 0
jne 0x1010f2c3
mov dword [ebp - 0x718], 0x1015e526
jmp 0x1010f2d2
mov eax, dword [ebp - 0x66c]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x718], ecx
mov edx, dword [ebp - 0x718]
push edx
lea ecx, [ebp - 0x148]
call fcn.1000ccc0
mov dword [ebp - 0x748], eax
mov eax, dword [ebp - 0x62c]
or eax, 8
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x748]
mov dword [ebp - 0x720], ecx
mov edx, dword [ebp - 0x720]
mov dword [ebp - 0x750], edx
mov eax, dword [ebp - 0x750]
push eax
lea ecx, [ebp - 0x628]
call fcn.10009ec0
mov ecx, dword [ebp - 0x62c]
and ecx, 8
je 0x1010f340
and dword [ebp - 0x62c], 0xfffffff7
lea ecx, [ebp - 0x148]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov edx, dword [ebp - 0x62c]
and edx, 4
je 0x1010f364
and dword [ebp - 0x62c], 0xfffffffb
lea ecx, [ebp - 0x388]
call fcn.1000cd00
push str.protocol_version
mov eax, dword [ebp + 8]
push eax
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x674], eax
cmp dword [ebp - 0x674], 0
jne 0x1010f3c7
push 0x1015e567
lea ecx, [ebp - 0x178]
call fcn.1000ccc0
mov dword [ebp - 0x758], eax
mov ecx, dword [ebp - 0x758]
mov dword [ebp - 0x760], ecx
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x62c]
or edx, 0x10
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x730], eax
jmp 0x1010f421
mov ecx, dword [ebp - 0x674]
cmp dword [ecx + 0x10], 0
jne 0x1010f3df
mov dword [ebp - 0x728], 0x1015e527
jmp 0x1010f3ee
mov edx, dword [ebp - 0x674]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x728]
push ecx
lea ecx, [ebp - 0xb8]
call fcn.1000ccc0
mov dword [ebp - 0x768], eax
mov edx, dword [ebp - 0x62c]
or edx, 0x20
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x730], eax
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x770], ecx
mov edx, dword [ebp - 0x770]
push edx
lea ecx, [ebp - 0x610]
call fcn.10009ec0
mov eax, dword [ebp - 0x62c]
and eax, 0x20
je 0x1010f45c
and dword [ebp - 0x62c], 0xffffffdf
lea ecx, [ebp - 0xb8]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x62c]
and ecx, 0x10
je 0x1010f480
and dword [ebp - 0x62c], 0xffffffef
lea ecx, [ebp - 0x178]
call fcn.1000cd00
push 0x1017bdb8
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x67c], eax
cmp dword [ebp - 0x67c], 0
jne 0x1010f4e3
push 0x1015e5c3
lea ecx, [ebp - 0x1a8]
call fcn.1000ccc0
mov dword [ebp - 0x778], eax
mov eax, dword [ebp - 0x778]
mov dword [ebp - 0x780], eax
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x62c]
or ecx, 0x40
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x780]
mov dword [ebp - 0x69c], edx
jmp 0x1010f540
mov eax, dword [ebp - 0x67c]
cmp dword [eax + 0x10], 0
jne 0x1010f4fb
mov dword [ebp - 0x6e4], 0x1015e5dd
jmp 0x1010f50a
mov ecx, dword [ebp - 0x67c]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x6e4], edx
mov eax, dword [ebp - 0x6e4]
push eax
lea ecx, [ebp - 0x2f8]
call fcn.1000ccc0
mov dword [ebp - 0x788], eax
mov ecx, dword [ebp - 0x62c]
or ecx, 0x80
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x788]
mov dword [ebp - 0x69c], edx
mov eax, dword [ebp - 0x69c]
mov dword [ebp - 0x790], eax
mov ecx, dword [ebp - 0x790]
push ecx
lea ecx, [ebp - 0x5f8]
call fcn.10009ec0
mov edx, dword [ebp - 0x62c]
and edx, 0x80
je 0x1010f581
and dword [ebp - 0x62c], 0xffffff7f
lea ecx, [ebp - 0x2f8]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x62c]
and eax, 0x40
je 0x1010f5a5
and dword [ebp - 0x62c], 0xffffffbf
lea ecx, [ebp - 0x1a8]
call fcn.1000cd00
push 0x1017bdc4
mov ecx, dword [ebp + 8]
push ecx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x684], eax
cmp dword [ebp - 0x684], 0
jne 0x1010f60a
push 0x1015e5df
lea ecx, [ebp - 0x1d8]
call fcn.1000ccc0
mov dword [ebp - 0x798], eax
mov edx, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], edx
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x62c]
or eax, 0x100
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x7a0]
mov dword [ebp - 0x6a4], ecx
jmp 0x1010f666
mov edx, dword [ebp - 0x684]
cmp dword [edx + 0x10], 0
jne 0x1010f622
mov dword [ebp - 0x70c], 0x1015e5de
jmp 0x1010f631
mov eax, dword [ebp - 0x684]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x70c], ecx
mov edx, dword [ebp - 0x70c]
push edx
lea ecx, [ebp - 0x400]
call fcn.1000ccc0
mov dword [ebp - 0x7a8], eax
mov eax, dword [ebp - 0x62c]
or eax, 0x200
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x7a8]
mov dword [ebp - 0x6a4], ecx
mov edx, dword [ebp - 0x6a4]
mov dword [ebp - 0x7b0], edx
mov eax, dword [ebp - 0x7b0]
push eax
lea ecx, [ebp - 0x5e0]
call fcn.10009ec0
mov ecx, dword [ebp - 0x62c]
and ecx, 0x200
je 0x1010f6a7
and dword [ebp - 0x62c], 0xfffffdff
lea ecx, [ebp - 0x400]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov edx, dword [ebp - 0x62c]
and edx, 0x100
je 0x1010f6d1
and dword [ebp - 0x62c], 0xfffffeff
lea ecx, [ebp - 0x1d8]
call fcn.1000cd00
push 0x1017bdcc
mov eax, dword [ebp + 8]
push eax
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x68c], eax
cmp dword [ebp - 0x68c], 0
jne 0x1010f737
push 0x1015e631
lea ecx, [ebp - 0x208]
call fcn.1000ccc0
mov dword [ebp - 0x7b8], eax
mov ecx, dword [ebp - 0x7b8]
mov dword [ebp - 0x7bc], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x62c]
or edx, 0x400
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x7bc]
mov dword [ebp - 0x6ac], eax
jmp 0x1010f794
mov ecx, dword [ebp - 0x68c]
cmp dword [ecx + 0x10], 0
jne 0x1010f74f
mov dword [ebp - 0x6ec], 0x1015e632
jmp 0x1010f75e
mov edx, dword [ebp - 0x68c]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x6ec], eax
mov ecx, dword [ebp - 0x6ec]
push ecx
lea ecx, [ebp - 0x328]
call fcn.1000ccc0
mov dword [ebp - 0x7c0], eax
mov edx, dword [ebp - 0x62c]
or edx, 0x800
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x7c0]
mov dword [ebp - 0x6ac], eax
mov ecx, dword [ebp - 0x6ac]
mov dword [ebp - 0x7cc], ecx
mov edx, dword [ebp - 0x7cc]
push edx
lea ecx, [ebp - 0x5c8]
call fcn.10009ec0
mov eax, dword [ebp - 0x62c]
and eax, 0x800
je 0x1010f7d4
and dword [ebp - 0x62c], 0xfffff7ff
lea ecx, [ebp - 0x328]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x62c]
and ecx, 0x400
je 0x1010f7fe
and dword [ebp - 0x62c], 0xfffffbff
lea ecx, [ebp - 0x208]
call fcn.1000cd00
push 0x1017bdd0
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x658], eax
cmp dword [ebp - 0x658], 0
jne 0x1010f864
push 0x1015e662
lea ecx, [ebp - 0x238]
call fcn.1000ccc0
mov dword [ebp - 0x7d4], eax
mov eax, dword [ebp - 0x7d4]
mov dword [ebp - 0x7dc], eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x62c]
or ecx, 0x1000
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x7dc]
mov dword [ebp - 0x6b4], edx
jmp 0x1010f8c1
mov eax, dword [ebp - 0x658]
cmp dword [eax + 0x10], 0
jne 0x1010f87c
mov dword [ebp - 0x72c], 0x1015e633
jmp 0x1010f88b
mov ecx, dword [ebp - 0x658]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x72c], edx
mov eax, dword [ebp - 0x72c]
push eax
lea ecx, [ebp - 0x3d0]
call fcn.1000ccc0
mov dword [ebp - 0x7e4], eax
mov ecx, dword [ebp - 0x62c]
or ecx, 0x2000
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x7e4]
mov dword [ebp - 0x6b4], edx
mov eax, dword [ebp - 0x6b4]
mov dword [ebp - 0x7ec], eax
mov ecx, dword [ebp - 0x7ec]
push ecx
lea ecx, [ebp - 0x5b0]
call fcn.10009ec0
mov edx, dword [ebp - 0x62c]
and edx, 0x2000
je 0x1010f902
and dword [ebp - 0x62c], 0xffffdfff
lea ecx, [ebp - 0x3d0]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x62c]
and eax, 0x1000
je 0x1010f92b
and dword [ebp - 0x62c], 0xffffefff
lea ecx, [ebp - 0x238]
call fcn.1000cd00
push 0x1017bddc
mov ecx, dword [ebp + 8]
push ecx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x65c], eax
cmp dword [ebp - 0x65c], 0
jne 0x1010f990
push 0x1015e663
lea ecx, [ebp - 0x268]
call fcn.1000ccc0
mov dword [ebp - 0x734], eax
mov edx, dword [ebp - 0x734]
mov dword [ebp - 0x7fc], edx
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x62c]
or eax, 0x4000
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x7fc]
mov dword [ebp - 0x6bc], ecx
jmp 0x1010f9ec
mov edx, dword [ebp - 0x65c]
cmp dword [edx + 0x10], 0
jne 0x1010f9a8
mov dword [ebp - 0x6f4], 0x1015e66d
jmp 0x1010f9b7
mov eax, dword [ebp - 0x65c]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x6f4], ecx
mov edx, dword [ebp - 0x6f4]
push edx
lea ecx, [ebp - 0x358]
call fcn.1000ccc0
mov dword [ebp - 0x804], eax
mov eax, dword [ebp - 0x62c]
or eax, 0x8000
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x804]
mov dword [ebp - 0x6bc], ecx
mov edx, dword [ebp - 0x6bc]
mov dword [ebp - 0x80c], edx
mov eax, dword [ebp - 0x80c]
push eax
lea ecx, [ebp - 0x598]
call fcn.10009ec0
mov ecx, dword [ebp - 0x62c]
and ecx, 0x8000
je 0x1010fa2d
and dword [ebp - 0x62c], 0xffff7fff
lea ecx, [ebp - 0x358]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov edx, dword [ebp - 0x62c]
and edx, 0x4000
je 0x1010fa57
and dword [ebp - 0x62c], 0xffffbfff
lea ecx, [ebp - 0x268]
call fcn.1000cd00
push 0x1017bde4
mov eax, dword [ebp + 8]
push eax
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x680], eax
cmp dword [ebp - 0x680], 0
jne 0x1010fabd
push 0x1015e66f
lea ecx, [ebp - 0x298]
call fcn.1000ccc0
mov dword [ebp - 0x814], eax
mov ecx, dword [ebp - 0x814]
mov dword [ebp - 0x81c], ecx
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x62c]
or edx, 0x10000
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x81c]
mov dword [ebp - 0x6c4], eax
jmp 0x1010fb1a
mov ecx, dword [ebp - 0x680]
cmp dword [ecx + 0x10], 0
jne 0x1010fad5
mov dword [ebp - 0x714], 0x1015e66e
jmp 0x1010fae4
mov edx, dword [ebp - 0x680]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x714], eax
mov ecx, dword [ebp - 0x714]
push ecx
lea ecx, [ebp - 0x430]
call fcn.1000ccc0
mov dword [ebp - 0x828], eax
mov edx, dword [ebp - 0x62c]
or edx, 0x20000
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x828]
mov dword [ebp - 0x6c4], eax
mov ecx, dword [ebp - 0x6c4]
mov dword [ebp - 0x830], ecx
mov edx, dword [ebp - 0x830]
push edx
lea ecx, [ebp - 0x580]
call fcn.10009ec0
mov eax, dword [ebp - 0x62c]
and eax, 0x20000
je 0x1010fb5a
and dword [ebp - 0x62c], 0xfffdffff
lea ecx, [ebp - 0x430]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x62c]
and ecx, 0x10000
je 0x1010fb84
and dword [ebp - 0x62c], 0xfffeffff
lea ecx, [ebp - 0x298]
call fcn.1000cd00
push str.body
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x650], eax
cmp dword [ebp - 0x650], 0
jne 0x1010fbea
push 0x1015e712
lea ecx, [ebp - 0x100]
call fcn.1000ccc0
mov dword [ebp - 0x838], eax
mov eax, dword [ebp - 0x838]
mov dword [ebp - 0x840], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x62c]
or ecx, 0x40000
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x840]
mov dword [ebp - 0x6cc], edx
jmp 0x1010fc47
mov eax, dword [ebp - 0x650]
cmp dword [eax + 0x10], 0
jne 0x1010fc02
mov dword [ebp - 0x6fc], 0x1015e713
jmp 0x1010fc11
mov ecx, dword [ebp - 0x650]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x6fc], edx
mov eax, dword [ebp - 0x6fc]
push eax
lea ecx, [ebp - 0xd0]
call fcn.1000ccc0
mov dword [ebp - 0x848], eax
mov ecx, dword [ebp - 0x62c]
or ecx, 0x80000
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x848]
mov dword [ebp - 0x6cc], edx
mov eax, dword [ebp - 0x6cc]
mov dword [ebp - 0x850], eax
mov ecx, dword [ebp - 0x850]
push ecx
lea ecx, [ebp - 0x568]
call fcn.10009ec0
mov edx, dword [ebp - 0x62c]
and edx, 0x80000
je 0x1010fc88
and dword [ebp - 0x62c], 0xfff7ffff
lea ecx, [ebp - 0xd0]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x62c]
and eax, 0x40000
je 0x1010fcb1
and dword [ebp - 0x62c], 0xfffbffff
lea ecx, [ebp - 0x100]
call fcn.1000cd00
push 0x1017bdf4
mov ecx, dword [ebp + 8]
push ecx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x660], eax
cmp dword [ebp - 0x660], 0
jne 0x1010fd16
push 0x1015e723
lea ecx, [ebp - 0x160]
call fcn.1000ccc0
mov dword [ebp - 0x858], eax
mov edx, dword [ebp - 0x858]
mov dword [ebp - 0x860], edx
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x62c]
or eax, 0x100000
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x860]
mov dword [ebp - 0x6d4], ecx
jmp 0x1010fd72
mov edx, dword [ebp - 0x660]
cmp dword [edx + 0x10], 0
jne 0x1010fd2e
mov dword [ebp - 0x724], 0x1015e722
jmp 0x1010fd3d
mov eax, dword [ebp - 0x660]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x724], ecx
mov edx, dword [ebp - 0x724]
push edx
lea ecx, [ebp - 0x130]
call fcn.1000ccc0
mov dword [ebp - 0x868], eax
mov eax, dword [ebp - 0x62c]
or eax, 0x200000
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x868]
mov dword [ebp - 0x6d4], ecx
mov edx, dword [ebp - 0x6d4]
mov dword [ebp - 0x870], edx
mov eax, dword [ebp - 0x870]
push eax
lea ecx, [ebp - 0x4a8]
call fcn.10009ec0
mov ecx, dword [ebp - 0x62c]
and ecx, 0x200000
je 0x1010fdb3
and dword [ebp - 0x62c], 0xffdfffff
lea ecx, [ebp - 0x130]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov edx, dword [ebp - 0x62c]
and edx, 0x100000
je 0x1010fddd
and dword [ebp - 0x62c], 0xffefffff
lea ecx, [ebp - 0x160]
call fcn.1000cd00
push 0x1017bdfc
mov eax, dword [ebp + 8]
push eax
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x688], eax
cmp dword [ebp - 0x688], 0
jne 0x1010fe43
push 0x1015e73f
lea ecx, [ebp - 0x1c0]
call fcn.1000ccc0
mov dword [ebp - 0x878], eax
mov ecx, dword [ebp - 0x878]
mov dword [ebp - 0x84c], ecx
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x62c]
or edx, 0x400000
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x84c]
mov dword [ebp - 0x6dc], eax
jmp 0x1010fea0
mov ecx, dword [ebp - 0x688]
cmp dword [ecx + 0x10], 0
jne 0x1010fe5b
mov dword [ebp - 0x704], 0x1015e791
jmp 0x1010fe6a
mov edx, dword [ebp - 0x688]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x704], eax
mov ecx, dword [ebp - 0x704]
push ecx
lea ecx, [ebp - 0x190]
call fcn.1000ccc0
mov dword [ebp - 0x73c], eax
mov edx, dword [ebp - 0x62c]
or edx, 0x800000
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x73c]
mov dword [ebp - 0x6dc], eax
mov ecx, dword [ebp - 0x6dc]
mov dword [ebp - 0x7e0], ecx
mov edx, dword [ebp - 0x7e0]
push edx
lea ecx, [ebp - 0x550]
call fcn.10009ec0
mov eax, dword [ebp - 0x62c]
and eax, 0x800000
je 0x1010fee0
and dword [ebp - 0x62c], 0xff7fffff
lea ecx, [ebp - 0x190]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x62c]
and ecx, 0x400000
je 0x1010ff0a
and dword [ebp - 0x62c], 0xffbfffff
lea ecx, [ebp - 0x1c0]
call fcn.1000cd00
push 0x1017be04
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x63c], eax
cmp dword [ebp - 0x63c], 0
jne 0x1010ff70
push 0x1015e793
lea ecx, [ebp - 0x220]
call fcn.1000ccc0
mov dword [ebp - 0x744], eax
mov eax, dword [ebp - 0x744]
mov dword [ebp - 0x854], eax
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x62c]
or ecx, 0x1000000
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x854]
mov dword [ebp - 0x71c], edx
jmp 0x1010ffac
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax + 0x14]
push ecx
lea edx, [ebp - 0x1f0]
push edx
call fcn.10036550
add esp, 8
mov dword [ebp - 0x74c], eax
mov eax, dword [ebp - 0x62c]
or eax, 0x2000000
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x74c]
mov dword [ebp - 0x71c], ecx
mov edx, dword [ebp - 0x71c]
mov dword [ebp - 0x7e8], edx
mov eax, dword [ebp - 0x7e8]
push eax
lea ecx, [ebp - 0x460]
call fcn.10009ec0
mov ecx, dword [ebp - 0x62c]
and ecx, 0x2000000
je 0x1010ffed
and dword [ebp - 0x62c], 0xfdffffff
lea ecx, [ebp - 0x1f0]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov edx, dword [ebp - 0x62c]
and edx, 0x1000000
je 0x10110017
and dword [ebp - 0x62c], 0xfeffffff
lea ecx, [ebp - 0x220]
call fcn.1000cd00
cmp dword [ebp - 0x63c], 0
je 0x10110087
mov eax, dword [ebp - 0x63c]
cmp dword [eax + 0xc], 4
jne 0x10110087
mov ecx, dword [ebp - 0x63c]
cmp dword [ecx + 0x10], 0
jne 0x10110044
mov dword [ebp - 0x694], 0x1015e792
jmp 0x10110053
mov edx, dword [ebp - 0x63c]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x694], eax
mov ecx, dword [ebp - 0x694]
push ecx
lea ecx, [ebp - 0x460]
call fcn.10009f70
lea ecx, [ebp - 0x460]
call fcn.10003ae0
movzx edx, al
test edx, edx
je 0x10110087
push 0x1017be1c
lea ecx, [ebp - 0x460]
call fcn.10009f70
push str.sender_name
mov eax, dword [ebp + 8]
push eax
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x670], eax
cmp dword [ebp - 0x670], 0
jne 0x101100ed
push 0x1015e7ab
lea ecx, [ebp - 0x280]
call fcn.1000ccc0
mov dword [ebp - 0x754], eax
mov ecx, dword [ebp - 0x754]
mov dword [ebp - 0x834], ecx
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x62c]
or edx, 0x4000000
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x834]
mov dword [ebp - 0x690], eax
jmp 0x1011014a
mov ecx, dword [ebp - 0x670]
cmp dword [ecx + 0x10], 0
jne 0x10110105
mov dword [ebp - 0x698], 0x1015e7aa
jmp 0x10110114
mov edx, dword [ebp - 0x670]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x698], eax
mov ecx, dword [ebp - 0x698]
push ecx
lea ecx, [ebp - 0x250]
call fcn.1000ccc0
mov dword [ebp - 0x75c], eax
mov edx, dword [ebp - 0x62c]
or edx, 0x8000000
mov dword [ebp - 0x62c], edx
mov eax, dword [ebp - 0x75c]
mov dword [ebp - 0x690], eax
mov ecx, dword [ebp - 0x690]
mov dword [ebp - 0x7f0], ecx
mov edx, dword [ebp - 0x7f0]
push edx
lea ecx, [ebp - 0x538]
call fcn.10009ec0
mov eax, dword [ebp - 0x62c]
and eax, 0x8000000
je 0x1011018a
and dword [ebp - 0x62c], 0xf7ffffff
lea ecx, [ebp - 0x250]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x62c]
and ecx, 0x4000000
je 0x101101b4
and dword [ebp - 0x62c], 0xfbffffff
lea ecx, [ebp - 0x280]
call fcn.1000cd00
push 0x1017be30
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x6a8], eax
cmp dword [ebp - 0x6a8], 0
je 0x10110212
mov eax, dword [ebp - 0x6a8]
push eax
call fcn.101005f0
add esp, 4
push eax
lea ecx, [ebp - 0x2b0]
call fcn.1000ccc0
mov dword [ebp - 0x764], eax
mov ecx, dword [ebp - 0x764]
push ecx
lea ecx, [ebp - 0x520]
call fcn.10009ec0
lea ecx, [ebp - 0x2b0]
call fcn.1000cd00
push str.recipient_name
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x6b0], eax
cmp dword [ebp - 0x6b0], 0
je 0x10110270
mov eax, dword [ebp - 0x6b0]
push eax
call fcn.101005f0
add esp, 4
push eax
lea ecx, [ebp - 0x2e0]
call fcn.1000ccc0
mov dword [ebp - 0x874], eax
mov ecx, dword [ebp - 0x874]
push ecx
lea ecx, [ebp - 0x508]
call fcn.10009ec0
lea ecx, [ebp - 0x2e0]
call fcn.1000cd00
push 0x1017be44
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x6b8], eax
cmp dword [ebp - 0x6b8], 0
je 0x101102ce
mov eax, dword [ebp - 0x6b8]
push eax
call fcn.101005f0
add esp, 4
push eax
lea ecx, [ebp - 0x310]
call fcn.1000ccc0
mov dword [ebp - 0x76c], eax
mov ecx, dword [ebp - 0x76c]
push ecx
lea ecx, [ebp - 0x490]
call fcn.10009ec0
lea ecx, [ebp - 0x310]
call fcn.1000cd00
push str.cc_name
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x6c0], eax
cmp dword [ebp - 0x6c0], 0
je 0x1011032c
mov eax, dword [ebp - 0x6c0]
push eax
call fcn.101005f0
add esp, 4
push eax
lea ecx, [ebp - 0x340]
call fcn.1000ccc0
mov dword [ebp - 0x7f8], eax
mov ecx, dword [ebp - 0x7f8]
push ecx
lea ecx, [ebp - 0x478]
call fcn.10009ec0
lea ecx, [ebp - 0x340]
call fcn.1000cd00
push str.attachments
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x6c8], eax
cmp dword [ebp - 0x6c8], 0
je 0x1011038a
mov eax, dword [ebp - 0x6c8]
push eax
call fcn.101005f0
add esp, 4
push eax
lea ecx, [ebp - 0x370]
call fcn.1000ccc0
mov dword [ebp - 0x774], eax
mov ecx, dword [ebp - 0x774]
push ecx
lea ecx, [ebp - 0x4d8]
call fcn.10009ec0
lea ecx, [ebp - 0x370]
call fcn.1000cd00
push 0x1017be48
mov edx, dword [ebp + 8]
push edx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x654], eax
cmp dword [ebp - 0x654], 0
jne 0x101103f0
push 0x1015e7d7
lea ecx, [ebp - 0x3e8]
call fcn.1000ccc0
mov dword [ebp - 0x83c], eax
mov eax, dword [ebp - 0x83c]
mov dword [ebp - 0x77c], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x62c]
or ecx, 0x10000000
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x77c]
mov dword [ebp - 0x6d8], edx
jmp 0x1011044d
mov eax, dword [ebp - 0x654]
cmp dword [eax + 0x10], 0
jne 0x10110408
mov dword [ebp - 0x6d0], 0x1015e7d6
jmp 0x10110417
mov ecx, dword [ebp - 0x654]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x6d0], edx
mov eax, dword [ebp - 0x6d0]
push eax
lea ecx, [ebp - 0x3b8]
call fcn.1000ccc0
mov dword [ebp - 0x800], eax
mov ecx, dword [ebp - 0x62c]
or ecx, 0x20000000
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp - 0x800]
mov dword [ebp - 0x6d8], edx
mov eax, dword [ebp - 0x6d8]
mov dword [ebp - 0x784], eax
mov ecx, dword [ebp - 0x784]
push ecx
lea ecx, [ebp - 0x4f0]
call fcn.10009ec0
mov edx, dword [ebp - 0x62c]
and edx, 0x20000000
je 0x1011048e
and dword [ebp - 0x62c], 0xdfffffff
lea ecx, [ebp - 0x3b8]
call fcn.1000cd00
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x62c]
and eax, 0x10000000
je 0x101104b7
and dword [ebp - 0x62c], 0xefffffff
lea ecx, [ebp - 0x3e8]
call fcn.1000cd00
lea ecx, [ebp - 0x628]
push ecx
call fcn.1003fae0
mov ecx, eax
call fcn.1011f0b0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x628]
call fcn.10040260
jmp 0x1011096c
mov dword [ebp - 0x648], str.downloadMsg
lea ecx, [ebp - 0x40]
call fcn.1000c9b0
mov dword [ebp - 0x64c], eax
mov edx, dword [ebp - 0x64c]
mov al, byte [edx]
mov byte [ebp - 0x631], al
mov ecx, dword [ebp - 0x648]
cmp al, byte [ecx]
jne 0x10110554
cmp byte [ebp - 0x631], 0
je 0x10110548
mov edx, dword [ebp - 0x64c]
mov al, byte [edx + 1]
mov byte [ebp - 0x632], al
mov ecx, dword [ebp - 0x648]
cmp al, byte [ecx + 1]
jne 0x10110554
add dword [ebp - 0x64c], 2
add dword [ebp - 0x648], 2
cmp byte [ebp - 0x632], 0
jne 0x101104f6
mov dword [ebp - 0x6e0], 0
jmp 0x1011055f
sbb edx, edx
or edx, 1
mov dword [ebp - 0x6e0], edx
mov eax, dword [ebp - 0x6e0]
mov dword [ebp - 0x85c], eax
cmp dword [ebp - 0x85c], 0
jne 0x1011094e
lea ecx, [ebp - 0x824]
call fcn.101189a0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x7c8]
call fcn.101189a0
mov byte [ebp - 4], 0x13
push str.data_legacy_message_id
mov ecx, dword [ebp + 8]
push ecx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x678], eax
cmp dword [ebp - 0x678], 0
jne 0x101105fb
push 0x1015e7db
lea ecx, [ebp - 0x448]
call fcn.1000ccc0
mov dword [ebp - 0x78c], eax
mov edx, dword [ebp - 0x78c]
mov dword [ebp - 0x808], edx
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x62c]
or eax, 0x40000000
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x808]
mov dword [ebp - 0x6f0], ecx
jmp 0x10110657
mov edx, dword [ebp - 0x678]
cmp dword [edx + 0x10], 0
jne 0x10110613
mov dword [ebp - 0x6e8], 0x1015e7da
jmp 0x10110622
mov eax, dword [ebp - 0x678]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x6e8], ecx
mov edx, dword [ebp - 0x6e8]
push edx
lea ecx, [ebp - 0x418]
call fcn.1000ccc0
mov dword [ebp - 0x794], eax
mov eax, dword [ebp - 0x62c]
or eax, 0x80000000
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x6f0], ecx
mov edx, dword [ebp - 0x6f0]
mov dword [ebp - 0x844], edx
mov eax, dword [ebp - 0x844]
push eax
lea ecx, [ebp - 0x28]
call fcn.1000ca30
mov dword [ebp - 4], 0x15
mov ecx, dword [ebp - 0x62c]
and ecx, 0x80000000
je 0x1011069c
and dword [ebp - 0x62c], 0x7fffffff
lea ecx, [ebp - 0x418]
call fcn.1000cd00
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x62c]
and edx, 0x40000000
je 0x101106c3
and dword [ebp - 0x62c], 0xbfffffff
lea ecx, [ebp - 0x448]
call fcn.1000cd00
push 0
push str.ymreqid
lea ecx, [ebp - 0x28]
call fcn.10009fb0
cmp eax, 0xffffffff
je 0x10110718
push 0
push 0x1017be90
lea ecx, [ebp - 0x28]
call fcn.10009fb0
push eax
push 0
lea eax, [ebp - 0x3a0]
push eax
lea ecx, [ebp - 0x28]
call fcn.10009fe0
mov dword [ebp - 0x79c], eax
mov ecx, dword [ebp - 0x79c]
push ecx
lea ecx, [ebp - 0x28]
call fcn.10009ec0
lea ecx, [ebp - 0x3a0]
call fcn.1000cd00
push str.datalegacyid
lea ecx, [ebp - 0x58]
call fcn.1000ccc0
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x824]
call fcn.10118a20
mov ecx, eax
call fcn.1000cab0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x58]
call fcn.1000cd00
push 0x1017bea8
mov ecx, dword [ebp + 8]
push ecx
call fcn.10101ac0
add esp, 8
mov dword [ebp - 0x668], eax
cmp dword [ebp - 0x668], 0
jne 0x101107b2
push 0x1015e867
lea ecx, [ebp - 0x2c8]
call fcn.1000ccc0
mov dword [ebp - 0x810], eax
mov edx, dword [ebp - 0x810]
mov dword [ebp - 0x7a4], edx
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x630]
or eax, 1
mov dword [ebp - 0x630], eax
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0x700], ecx
jmp 0x1011080c
mov edx, dword [ebp - 0x668]
cmp dword [edx + 0x10], 0
jne 0x101107ca
mov dword [ebp - 0x6f8], 0x1015e866
jmp 0x101107d9
mov eax, dword [ebp - 0x668]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x6f8], ecx
mov edx, dword [ebp - 0x6f8]
push edx
lea ecx, [ebp - 0xe8]
call fcn.1000ccc0
mov dword [ebp - 0x86c], eax
mov eax, dword [ebp - 0x630]
or eax, 2
mov dword [ebp - 0x630], eax
mov ecx, dword [ebp - 0x86c]
mov dword [ebp - 0x700], ecx
mov edx, dword [ebp - 0x700]
mov dword [ebp - 0x7ac], edx
mov eax, dword [ebp - 0x7ac]
push eax
lea ecx, [ebp - 0x70]
call fcn.1000ca30
mov dword [ebp - 4], 0x19
mov ecx, dword [ebp - 0x630]
and ecx, 2
je 0x1011084b
and dword [ebp - 0x630], 0xfffffffd
lea ecx, [ebp - 0xe8]
call fcn.1000cd00
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x630]
and edx, 1
je 0x1011086c
and dword [ebp - 0x630], 0xfffffffe
lea ecx, [ebp - 0x2c8]
call fcn.1000cd00
push str.attachment_path
lea ecx, [ebp - 0x88]
call fcn.1000ccc0
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x88]
push ecx
lea ecx, [ebp - 0x7c8]
call fcn.10118a20
mov ecx, eax
call fcn.1000cab0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x88]
call fcn.1000cd00
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x884], esp
lea edx, [ebp - 0x7c8]
push edx
call fcn.101189d0
mov dword [ebp - 0x818], eax
mov eax, dword [ebp - 0x818]
mov dword [ebp - 0x87c], eax
mov byte [ebp - 4], 0x1c
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x880], esp
lea edx, [ebp - 0x824]
push edx
call fcn.101189d0
mov dword [ebp - 0x7b4], eax
mov eax, dword [ebp - 0x7b4]
mov dword [ebp - 0x888], eax
mov byte [ebp - 4], 0x1d
call fcn.1003fae0
mov byte [ebp - 4], 0x1a
mov ecx, eax
call fcn.1011f1a0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x70]
call fcn.1000cd00
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x28]
call fcn.1000cd00
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x7c8]
call fcn.10110b50
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x824]
call fcn.10110b50
jmp 0x1011096c
mov byte [ebp - 0x633], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.1000cd00
mov al, byte [ebp - 0x633]
jmp 0x10110988
mov byte [ebp - 0x635], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.1000cd00
mov al, byte [ebp - 0x635]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1014c66b
mov esp, ebp
pop ebp
ret