Function at 0x100fd320
Capabilities:
Get thread local storage value
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x150
mov esi, dword [ebp + 8]
mov eax, dword [0x101f1014]
xor eax, ebp
mov dword [esp + 0x148], eax
mov eax, dword [esi + 0x4ac]
cmp eax, 1
jne 0x100fd3e5
xor eax, eax
mov dword [esi + 0x454], eax
mov dword [esi + 0x45c], eax
mov dword [esi + 0x46c], eax
mov eax, dword [esi + 0x478]
test eax, eax
je 0x100fd382
push 1
push eax
call sym.nss3.dll_PK11_DestroyContext
add esp, 8
mov dword [esi + 0x478], 0
mov eax, dword [esi + 0x47c]
test eax, eax
je 0x100fd3a1
push 1
push eax
call sym.nss3.dll_PK11_DestroyContext
add esp, 8
mov dword [esi + 0x47c], 0
mov eax, dword [esi + 0x480]
test eax, eax
je 0x100fd3c0
push 1
push eax
call sym.nss3.dll_PK11_DestroyContext
add esp, 8
mov dword [esi + 0x480], 0
mov eax, dword [esi + 0x484]
test eax, eax
je 0x100fd3df
push 1
push eax
call sym.nss3.dll_PK11_DestroyContext
add esp, 8
mov dword [esi + 0x484], 0
mov eax, dword [esi + 0x4ac]
mov edi, dword [ebp + 0xc]
cmp eax, 0x14
ja 0x100fd65b
mov ecx, 0x10800f
bt ecx, eax
jae 0x100fd65b
xor eax, eax
push eax
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
cmp dword [esi + 0x450], 9
jne 0x100fd447
cmp dword [esi + 0x4ac], 0x16
jne 0x100fd436
mov edx, dword [esi + 0x3b0]
movzx eax, word [edx + 0x4c]
mov word [esp + 0x1a], ax
mov ecx, 0x16
jmp 0x100fd5e1
push esi
call fcn.100fc150
add esp, 4
test eax, eax
jne 0x100fec07
mov edx, dword [esi + 0x3b0]
mov ecx, dword [esi + 0x4ac]
movzx eax, word [edx + 0x4c]
cmp ecx, 2
je 0x100fd5b9
cmp ecx, 1
jne 0x100fd5dc
cmp dword [esi + 0x60], 0
je 0x100fd68c
mov word [esp + 0x1a], ax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], edi
xor eax, eax
mov dword [esp + 0x124], eax
mov dword [esp + 0x120], eax
mov dword [esp + 0x128], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x4c], eax
mov dword [esi + 0x54c], eax
mov eax, dword [esi + 0x450]
mov ebx, 0xffffd02a
mov edi, 0xa
mov ecx, 2
cmp eax, 1
ja 0x100fe710
test eax, eax
je 0x100fd7ca
push esi
call fcn.10116710
add esp, 4
mov ebx, eax
test eax, eax
jne 0x100fe737
lea eax, [esi + 0x71c]
push esi
mov dword [esp + 0x14], eax
push eax
call fcn.10106d70
add esp, 8
mov dword [esi + 0x718], 0
cmp dword [esi + 0xa24], 1
jne 0x100fd531
push esi
call fcn.100f2f50
add esp, 4
lea ebx, [esp + 0x38]
lea edx, [esp + 0x120]
lea ecx, [esp + 0x64]
lea eax, [esp + 0x60]
push ebx
lea ebx, [esp + 0x54]
push ebx
lea ebx, [esp + 0x70]
push ebx
push edx
push ecx
push eax
push esi
call fcn.100fa7b0
add esp, 0x1c
mov ebx, 0xffffd01c
test eax, eax
jne 0x100fe71b
mov eax, dword [esp + 0x64]
test eax, eax
je 0x100fe118
cmp eax, 1
jne 0x100fe0d9
movzx eax, word [esi + 0x58]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor eax, eax
cmp dword [esi + 0x60], 0
sete al
or eax, 0xffffd006
push 0
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100fe71b
cmp dword [esi + 0x60], 0
je 0x100fd6a5
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd02b
jmp 0x100febff
mov word [esp + 0x1a], ax
movzx eax, word [esi + 0x58]
cmp eax, 0x303
ja 0x100fd647
cmp ecx, 0x16
ja case.0x100fd5f5.1
jmp dword [ecx*4 + 0x101c6254]
cmp dword [ebp + 0x10], 0
je 0x100fdd70
movzx eax, ax
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor edi, edi
xor eax, eax
cmp dword [esi + 0x60], edi
sete al
or eax, 0xffffd006
push edi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push edi
push 0xffffd01b
jmp 0x100fe72c
push dword [ebp + 0x10]
push edi
push esi
call fcn.1011b8a0
add esp, 0xc
mov ebx, eax
jmp 0x100febc9
push esi
call fcn.1011a190
add esp, 4
test eax, eax
jne 0x100fd3ff
push dword [ebp + 0x10]
push edi
push dword [esi + 0x4ac]
push esi
call fcn.100fd000
add esp, 0x10
test eax, eax
jne 0x100fec07
jmp 0x100fd3ff
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd02a
jmp 0x100febff
mov word [esp + 0x1a], ax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x68], eax
mov dword [esp + 0x50], edi
xor eax, eax
mov dword [esp + 0x120], eax
mov dword [esp + 0x128], eax
mov dword [esp + 0x124], eax
mov edx, 0xa
mov ebx, 0xffffd02b
cmp dword [esi + 0x450], 8
jne 0x100fdff9
mov eax, dword [esi + 0x3d8]
test eax, eax
je 0x100fd701
xor ebx, ebx
push ebx
push dword [eax + 8]
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 8
mov dword [esi + 0x3d8], ebx
mov eax, dword [esi + 0x3d0]
test eax, eax
je 0x100fd71e
push eax
call sym.nss3.dll_CERT_DestroyCertificate
add esp, 4
mov dword [esi + 0x3d0], 0
mov eax, dword [esi + 0x3d4]
test eax, eax
je 0x100fd73b
push eax
call sym.nss3.dll_SECKEY_DestroyPrivateKey
add esp, 4
mov dword [esi + 0x3d4], 0
mov eax, dword [esi + 0x538]
test eax, eax
je 0x100fd75d
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
xor eax, eax
mov dword [esi + 0x538], eax
mov dword [esi + 0x53c], eax
lea ebx, [esi + 0x58]
lea edi, [esp + 0x68]
lea eax, [esp + 0x50]
push ebx
push edi
push eax
push esi
call fcn.100f4300
add esp, 0x10
mov ecx, 0xffffd01d
test eax, eax
jne 0x100fe007
mov eax, dword [esp + 0x68]
cmp eax, 0x1f
ja 0x100fdddd
movzx eax, word [esi + 0x58]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor eax, eax
cmp dword [esi + 0x60], 0
sete al
or eax, 0xffffd006
push 0
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100fde9e
movzx eax, word [esi + 0x58]
mov ebx, 0xffffd070
cmp eax, 0x303
ja 0x100fe710
test byte [esi + 0x1d], 0x60
jne 0x100fd4ee
mov edi, 0x64
xor ecx, ecx
inc ecx
jmp 0x100fe710
cmp dword [esi + 0x450], 9
jne 0x100fdbe3
push dword [ebp + 0x10]
push edi
push esi
call fcn.100fbff0
add esp, 0xc
test eax, eax
jne 0x100febc6
push esi
call fcn.100fc150
jmp 0x100fe3a1
cmp dword [esi + 0x60], 0
jne 0x100fdb98
cmp dword [esi + 0x450], 0xb
jne 0x100fdb98
mov eax, dword [esi + 0x48c]
mov eax, dword [eax + 4]
cmp eax, 4
je 0x100fe6a3
cmp eax, 2
jne 0x100fe6b7
lea ecx, [esp + 0x64]
mov eax, dword [ebp + 0x10]
mov dword [ecx], eax
lea edx, [esp + 0x60]
mov dword [edx], edi
mov eax, dword [esi + 0x3b4]
movzx edi, word [eax + 0x10]
xor eax, eax
lea ebx, [esp + 0x120]
mov dword [ebx + 4], eax
mov dword [ebx], eax
mov dword [ebx + 8], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], eax
push ecx
push edx
push 2
push ebx
push esi
call fcn.100f6ff0
add esp, 0x14
mov ecx, 0xffffd01f
test eax, eax
jne 0x100ff731
lea eax, [esp + 0x48]
push eax
push 0xe
call sym.nss3.dll_NSS_OptionGet
add esp, 8
test eax, eax
jne 0x100fd8ea
test byte [esp + 0x48], 1
je 0x100fd8ea
lea eax, [esp + 0x4c]
push eax
push 2
call sym.nss3.dll_NSS_OptionGet
add esp, 8
mov word [esp + 0xc], di
cmp dword [esp + 0x4c], 0
jg 0x100fd8fe
mov dword [esp + 0x4c], 0x3ff
push ebx
call fcn.1008e1b0
add esp, 4
mov edi, eax
mov dword [esp + 0x10], 0xffffd073
mov eax, 0x2f
cmp edi, dword [esp + 0x4c]
jb 0x100ff721
cmp edi, 0x2000
jbe 0x100ff38a
mov dword [esp + 0x10], 0xffffd0af
jmp 0x100ff721
cmp dword [esi + 0x60], 0
je 0x100fdc15
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd02e
jmp 0x100febbe
cmp dword [esi + 0x60], 0
mov eax, dword [esi + 0x450]
je 0x100fdc7d
cmp eax, 3
jne 0x100fdca7
push esi
call fcn.100f3130
add esp, 4
mov ecx, dword [esi + 0x60]
jmp 0x100fdc84
cmp dword [esi + 0x60], 0
jne 0x100fdbb1
cmp dword [esi + 0x450], 0xe
jne 0x100fdbb1
push esi
call fcn.10116bd0
add esp, 4
mov dword [esi + 0x4c4], edx
mov dword [esi + 0x4c0], eax
mov ebx, dword [ebp + 0x10]
cmp ebx, 4
jae 0x100fe179
push 0x32
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd06e
jmp 0x100febbe
cmp dword [esi + 0xa24], 1
jne 0x100fd9ea
cmp dword [esi + 0x60], 0
je 0x100fdf03
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd07b
jmp 0x100febbe
cmp dword [ebp + 0x10], 0
je 0x100fdd93
movzx eax, ax
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
mov ebx, edi
xor edi, edi
xor eax, eax
cmp dword [esi + 0x60], edi
sete al
or eax, 0xffffd006
push edi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push edi
mov edi, ebx
push 0xffffd021
jmp 0x100febbe
cmp dword [esi + 0x60], 0
je 0x100fddc4
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x50], edi
xor ecx, ecx
mov dword [esp + 0x124], ecx
mov dword [esp + 0x120], ecx
mov dword [esp + 0x128], ecx
cmp dword [esi + 0x450], 5
jne 0x100fdea8
mov edx, dword [esi + 0x3b4]
movzx ecx, word [edx + 0x10]
cmp ecx, 0x303
jne 0x100fdf85
mov edx, dword [ebp + 0x10]
cmp edx, 2
jae 0x100fe2b1
movzx eax, ax
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor eax, eax
cmp dword [esi + 0x60], 0
sete al
or eax, 0xffffd006
jmp 0x100fe943
cmp dword [esi + 0x450], 7
jne 0x100fdbfc
mov edi, dword [esi + 0x60]
test edi, edi
je 0x100fdaf7
test byte [esi + 0x1c], 4
jne 0x100fdb06
push esi
call fcn.100f3130
add esp, 4
mov edx, dword [esi + 0x3b0]
test edi, edi
mov eax, 0x53525652
mov ebx, 0x434c4e54
cmove ebx, eax
lea eax, [esp + 0x74]
mov ecx, esi
push ebx
push eax
call fcn.100f7700
add esp, 8
test eax, eax
je 0x100fdf12
push 0
push 0xffffe001
jmp 0x100fe72c
cmp dword [esi + 0x60], 0
je 0x100fdbca
cmp dword [esi + 0x450], 4
jne 0x100fdbca
mov ebx, dword [esi + 0x48c]
cmp dword [ebx + 0x10], 0
je 0x100fe01f
mov eax, dword [esi + 0xd4]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x10], eax
push dword [eax + 4]
call fcn.1008eda0
add esp, 4
mov dword [esi + 0x90], eax
jmp 0x100fe03d
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd038
jmp 0x100febbe
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd02d
jmp 0x100febbe
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd06d
jmp 0x100febbe
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd031
jmp 0x100febbe
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd07d
jmp 0x100febbe
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd032
jmp 0x100febbe
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x68], eax
mov dword [esp + 0x50], edi
xor edi, edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x64], edi
cmp dword [esi + 0x450], 0xc
jne 0x100fdeb7
mov eax, dword [esi + 0x3b4]
movzx ebx, word [eax + 0x10]
cmp ebx, 0x301
setae al
mov edi, eax
lea ecx, [esp + 0x68]
lea edx, [esp + 0x50]
lea eax, [esp + 0x120]
push ecx
push edx
push 1
push eax
push esi
call fcn.100f6ff0
add esp, 0x14
test eax, eax
je 0x100fe321
push 0
push 0xffffd020
jmp 0x100fe72c
xor ecx, ecx
cmp eax, 0xa
jne 0x100fdca7
mov dword [esp + 0x10], ecx
mov edi, dword [esi + 0x3e4]
mov ebx, dword [esi + 0x3e8]
test ebx, ebx
je 0x100fdcc0
push dword [ebx + 4]
call sym.nss3.dll_CERT_DestroyCertificate
add esp, 4
mov ebx, dword [ebx]
jmp 0x100fdc94
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd02c
jmp 0x100febbe
test edi, edi
je 0x100fdccf
push 0
push edi
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 8
xor eax, eax
mov dword [esi + 0x3e4], eax
mov dword [esi + 0x3e8], eax
mov eax, dword [esi + 0x78]
test eax, eax
je 0x100fdd0e
mov ecx, dword [esi + 0x7c]
test ecx, ecx
je 0x100fdcfe
push ecx
call sym.nss3.dll_SECKEY_DestroyPublicKey
add esp, 4
mov dword [esi + 0x7c], 0
mov eax, dword [esi + 0x78]
push eax
call sym.nss3.dll_CERT_DestroyCertificate
add esp, 4
mov dword [esi + 0x78], 0
mov eax, dword [esi + 0x3b4]
movzx eax, word [eax + 0x10]
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x100fe23e
cmp edi, 3
jae 0x100fdf3d
movzx eax, word [esi + 0x58]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor eax, eax
cmp dword [esi + 0x60], 0
sete al
or eax, 0xffffd006
push 0
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
mov ebx, 0xffffd01e
mov edi, dword [ebp + 0xc]
jmp 0x100fe2a3
cmp dword [esi + 0x60], 0
je 0x100fdfaf
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd029
jmp 0x100febbe
cmp dword [esi + 0x60], 0
jne 0x100fddab
mov eax, dword [esi + 0x450]
add eax, 0xfffffff2
cmp eax, 0xfffffffd
ja 0x100fe39b
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd02f
jmp 0x100febbe
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd030
jmp 0x100febbe
lea ecx, [esi + 0x3f0]
mov edx, dword [esp + 0x50]
movdqu xmm0, xmmword [edx]
movdqu xmm1, xmmword [edx + 0x10]
movdqu xmmword [ecx + 0x10], xmm1
movdqu xmmword [ecx], xmm0
add edx, 0x20
mov dword [esp + 0x50], edx
add eax, 0xffffffe0
mov dword [esp + 0x68], eax
mov eax, 0x74ad21cf
xor eax, dword [esi + 0x3f0]
mov dword [esp + 0x10], eax
mov eax, 0x11619ae5
xor eax, dword [esi + 0x3f4]
mov dword [esp + 0xc], eax
mov ecx, edi
mov eax, 0x28c1dbe
xor eax, dword [esi + 0x3f8]
mov dword [esp + 0x14], eax
mov eax, 0x91b8651e
xor eax, dword [esi + 0x3fc]
mov dword [esp + 0x20], eax
mov eax, 0x1611a2c2
xor eax, dword [esi + 0x400]
mov dword [esp + 0x28], eax
mov eax, 0x5e8cbb7a
xor eax, dword [esi + 0x404]
mov dword [esp + 0x24], eax
mov eax, 0xe2099e07
xor eax, dword [esi + 0x408]
mov dword [esp + 0x30], eax
mov edi, 0x9c33a8c8
xor edi, dword [esi + 0x40c]
lea eax, [esp + 0x120]
push ecx
lea ecx, [esp + 0x54]
push ecx
push 1
push eax
push esi
call fcn.100f6ff0
add esp, 0x14
test eax, eax
je 0x100fdfcd
mov ecx, 0xffffd01d
jmp 0x100fe007
mov ebx, 0xffffd030
mov eax, 0xa
jmp 0x100febaf
mov eax, 0xa
mov ebx, 0xffffd02e
xor edx, edx
xor ecx, ecx
test cl, cl
mov ecx, 0x32
cmove ecx, eax
test dl, dl
cmove ecx, eax
push ecx
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push ebx
call sym.nss3.dll_PR_SetError
add esp, 8
xor ebx, ebx
dec ebx
test edi, edi
je 0x100fe737
push 0
push edi
call sym.nss3.dll_PORT_FreeArena_Util
jmp 0x100ff369
push dword [ebp + 0x10]
push edi
push esi
call fcn.100f3040
jmp 0x100fd651
mov dword [esp + 0x10], edi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 0x14
push esi
call fcn.100fd000
add esp, 0x10
test eax, eax
je 0x100fe3a9
mov ebx, eax
push 0
push 0xffffe001
jmp 0x100ff364
mov word [esp + 0xc], ax
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
shl eax, 0x10
shl ecx, 8
or ecx, eax
movzx ebx, byte [edx + 2]
or ebx, ecx
add edi, 0xfffffffd
cmp edi, ebx
jae 0x100fe1cb
movzx eax, word [esp + 0xc]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx*8 + 0x2a]
mov ebx, 0xffffd01e
jmp 0x100fe294
lea eax, [esp + 0x74]
mov ecx, esi
push 0
push eax
call fcn.100f7700
add esp, 8
xor ebx, ebx
test eax, eax
je 0x100fe5e7
mov ebx, 0xffffd07f
mov eax, 0x33
jmp 0x100febaf
mov eax, dword [esi + 0x450]
test eax, eax
je 0x100fe73f
xor ebx, ebx
cmp eax, 8
je 0x100febc9
jmp 0x100fdd7a
mov dword [esp + 0x34], edi
mov ecx, dword [esp + 0x128]
cmp ecx, 0x21
jb 0x100fe448
movzx eax, word [ebx]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea edx, [ecx + ecx*2]
add edx, 0x2f
mov ebx, 0xffffd01d
push edx
push 2
push esi
call fcn.100f4470
add esp, 0xc
mov ecx, ebx
mov dword [esi + 0x97c], 0
push ecx
call fcn.1010c480
add esp, 4
jmp 0x100fe734
mov eax, dword [esi + 0x9c]
mov ecx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
mov dword [esi + 0x90], eax
mov dword [esp + 0x10], ecx
test ecx, ecx
je 0x100fe803
mov eax, dword [ebx + 4]
mov dword [esi + 0x8c], eax
mov eax, dword [ebx + 4]
cmp eax, 4
je 0x100fe59f
cmp eax, 2
je 0x100fe4a1
cmp eax, 1
jne 0x100fe5b7
mov dword [esp + 0x124], edi
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x128], edx
mov eax, dword [esi + 0x3b4]
movzx eax, word [eax + 0x10]
cmp eax, 0x301
jb 0x100fea8f
cmp edx, 2
jae 0x100fea6c
movzx eax, word [esi + 0x58]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
mov ebx, edi
xor edi, edi
xor eax, eax
cmp dword [esi + 0x60], edi
sete al
or eax, 0xffffd006
push edi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push edi
mov edi, ebx
push 0xffffd045
jmp 0x100feb45
mov ecx, dword [esp + 0x60]
movzx edx, word [ecx]
rol dx, 8
movzx edx, dx
add ecx, 2
mov dword [esp + 0x60], ecx
add eax, 0xfffffffe
mov dword [esp + 0x64], eax
cmp eax, edx
jne 0x100fe6d0
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x64]
push eax
push esi
call fcn.10105fb0
add esp, 0xc
test eax, eax
jne 0x100fe71b
push 0x2b
push esi
call fcn.10106140
add esp, 8
test eax, eax
je 0x100fe6d7
push eax
push esi
call fcn.10120e50
add esp, 8
test eax, eax
je 0x100fe8d2
cmp dword [0x101f4f80], 0
je 0x1010144e
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101007d8
mov ebx, dword [eax + 0x28]
cmp ebx, 0xffffd009
mov eax, 0x46
mov edi, 0x2f
cmove edi, eax
jmp 0x100fe70b
mov eax, dword [edi]
lea ecx, [edi + 4]
lea edx, [esp + 0x68]
mov dword [edx], ecx
lea ecx, [ebx - 4]
lea ebx, [esp + 0x120]
mov dword [ebx], ecx
bswap eax
mov dword [esi + 0x4c8], eax
lea edi, [esp + 0x74]
push ebx
push edx
push 2
push edi
push esi
call fcn.100f6ff0
add esp, 0x14
or eax, dword [ebx]
je 0x100fe7c2
push 0x32
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd06e
jmp 0x100fe72c
test ebx, ebx
movzx eax, word [esp + 0xc]
je 0x100fe23e
push 0x800
call sym.nss3.dll_PORT_NewArena_Util
add esp, 4
mov dword [esi + 0x3e4], eax
test eax, eax
je 0x100fe234
cmp ebx, 3
jb 0x100fdf65
cmp edi, 3
jae 0x100fee58
movzx eax, word [esi + 0x58]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2 + 0x2f]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor eax, eax
cmp dword [esi + 0x60], 0
sete al
or eax, 0xffffd006
push 0
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
mov edi, dword [ebp + 0xc]
mov ebx, 0xffffd01e
jmp 0x100fe2a3
movzx ecx, ax
mov ebx, 0xffffd01e
mov eax, 0x2a
cmp ecx, 0x301
jb 0x100fe294
cmp dword [esp + 0x10], 0
mov edi, dword [ebp + 0xc]
je 0x100fe297
push esi
call fcn.100f65e0
add esp, 4
test eax, eax
je 0x100fe81c
cmp dword [0x101f4f80], 0
je 0x10101428
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10100745
mov ebx, dword [eax + 0x28]
jmp 0x100fe2a3
mov edi, dword [ebp + 0xc]
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
push ebx
call fcn.1010c480
add esp, 4
jmp 0x100febc6
movzx eax, word [edi]
rol ax, 8
movzx ebx, ax
lea eax, [edi + 2]
mov dword [esp + 0x50], eax
lea eax, [edx - 2]
mov dword [esp + 0x68], eax
mov ecx, ebx
call fcn.100f7220
test eax, eax
je 0x100fe931
mov eax, 0xd4
add eax, dword [esi + 0x78]
push eax
push ebx
push esi
call fcn.100f7460
add esp, 0xc
test eax, eax
je 0x100fe9d9
cmp dword [0x101f4f80], 0
je 0x10101458
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101007f5
mov ebx, dword [eax + 0x28]
mov eax, 0x2f
jmp 0x100febaf
mov dword [esp + 0x10], edi
push 0x800
call sym.nss3.dll_PORT_NewArena_Util
add esp, 4
mov dword [esp + 0x74], eax
test eax, eax
je 0x100fe984
mov edi, eax
movzx eax, bx
xor ebx, ebx
cmp eax, 0x303
jb 0x100fed7f
lea eax, [esp + 0x64]
lea ecx, [esp + 0x38]
lea edx, [esp + 0x68]
push edx
lea edx, [esp + 0x54]
push edx
push eax
push ecx
push edi
push esi
call fcn.100f9be0
add esp, 0x18
test eax, eax
je 0x100fed73
xor ebx, ebx
mov eax, 0xffffd020
push ebx
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push ebx
mov eax, 0xffffd020
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100fed9b
push esi
call fcn.10103ff0
add esp, 4
jmp 0x100fd654
mov edx, dword [esi + 0x3b0]
movzx eax, word [edx + 0x10]
cmp eax, 0x301
jb 0x100fe83a
cmp dword [ebp + 0x10], 0xc
jne 0x100fea1d
lea ebx, [esi + 0x4ea]
lea ecx, [esi + 0x4f6]
xor eax, eax
cmp dword [esp + 0x10], 0
sete al
lea edi, [esp + 0x120]
cmove ebx, ecx
mov ecx, esi
push edi
lea edi, [esp + 0x78]
push edi
push eax
call fcn.10103ef0
lea edx, [esp + 0x12c]
add esp, 0xc
movq xmm0, qword [edx]
movq qword [ebx], xmm0
mov ecx, dword [edx + 8]
mov dword [ebx + 8], ecx
mov word [esi + 0x4e8], 0xc
mov edi, 0xffffd057
mov ebx, 0x33
test eax, eax
jne 0x100fea27
push 0xc
push dword [ebp + 0xc]
push edx
call sym.nss3.dll_NSS_SecureMemcmp
add esp, 0xc
test eax, eax
jne 0x100fea27
mov edi, dword [esp + 0x10]
jmp 0x100fec75
mov eax, dword [esp + 0x68]
cmp eax, 2
jb 0x100fd78e
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x50]
movzx edi, word [ecx]
lea edx, [ecx + 2]
mov dword [esp + 0x50], edx
mov edx, eax
add edx, 0xfffffffe
mov dword [esp + 0x68], edx
je 0x100fd78e
mov dword [esp + 0x2c], ebx
lea edx, [ecx + 3]
cmp byte [ecx + 2], 0
lea ebx, [eax - 3]
mov dword [esp + 0x50], edx
mov dword [esp + 0x68], ebx
mov ebx, 0xffffd01d
je 0x100fedbf
mov edx, 0x2f
jmp 0x100fdff9
lea eax, [esp + 0x120]
mov ecx, dword [ebp + 0x10]
mov dword [eax], ecx
lea ecx, [esp + 0x68]
mov dword [ecx], edi
lea edi, [esp + 0xa0]
mov dword [edi - 0x28], 4
mov edx, dword [esp + 0x10]
mov edx, dword [edx + 4]
mov ebx, dword [edx + 0x1c]
mov dword [edi - 0x10], ebx
mov ebx, dword [edx + 0x18]
mov dword [edi - 0x14], ebx
mov ebx, dword [edx + 0x28]
mov dword [edi - 4], ebx
mov edx, dword [edx + 0x24]
mov dword [edi - 8], edx
push eax
push ecx
push 2
push edi
push esi
call fcn.100f6ff0
add esp, 0x14
xor ebx, ebx
dec ebx
test eax, eax
jne 0x100ff320
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 4]
add eax, 0x14
push edi
push eax
call fcn.10114bd0
add esp, 8
test eax, eax
je 0x100feb52
mov eax, dword [esi + 0x3b4]
movzx eax, word [eax + 0x10]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx*4 + 0x373]
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx]
sub esp, 0x28
xor edx, edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x20], edx
movdqa xmm0, xmmword [0x101c5730]
movdqu xmmword [esp + 8], xmm0
lea edx, [esp + 0x9c]
mov dword [esp + 4], edx
mov dword [esp], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0x10c
call fcn.100c8d10
add esp, 0x28
test eax, eax
je 0x100ff30a
mov edi, eax
push 1
push eax
push esi
call fcn.100f50f0
add esp, 0xc
mov ebx, eax
push edi
call sym.nss3.dll_PK11_FreeSymKey
add esp, 4
push esi
call fcn.10115710
jmp 0x100ff31d
push dword [esp + 0x10]
push dword [ebp + 0x10]
push edi
push esi
call fcn.10104e70
add esp, 0x10
mov ebx, eax
jmp 0x100ff323
push 0x28
push 2
push esi
call fcn.100f4470
add esp, 0xc
mov ebx, edi
xor edi, edi
xor eax, eax
cmp dword [esi + 0x60], edi
sete al
or eax, 0xffffd006
push edi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push edi
mov edi, ebx
jmp 0x100fe6c6
mov dword [esp + 0x10], ebx
lea eax, [esp + 0x68]
lea ecx, [esp + 0x50]
lea edx, [esp + 0x120]
push eax
push ecx
push 2
push edx
push esi
call fcn.100f6ff0
add esp, 0x14
mov ebx, 0xffffd022
test eax, eax
jne 0x100febbb
mov eax, dword [esi + 0x3b4]
movzx eax, word [eax + 0x10]
mov word [esp + 0xc], ax
mov ecx, 0xd4
add ecx, dword [esi + 0x78]
call fcn.1008e690
test eax, eax
je 0x100feb66
mov ebx, eax
lea eax, [esp + 0x74]
lea ecx, [esp + 0x120]
push ecx
push eax
push dword [esp + 0x18]
push ebx
push esi
call fcn.100f4a60
add esp, 0x14
mov dword [esp + 0x10], eax
push ebx
call sym.nss3.dll_SECKEY_DestroyPublicKey
add esp, 4
cmp dword [esp + 0x10], 0
jne 0x100feb73
mov dword [esp + 0x124], 0
cmp dword [esp + 0x68], 0
je 0x100ff616
movzx eax, word [esp + 0xc]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2]
add eax, 0x2f
mov ebx, 0xffffd022
jmp 0x100febaf
push dword [ebp + 0x10]
push edi
push esi
call fcn.101051a0
add esp, 0xc
mov ebx, eax
jmp 0x100ff74b
push 0x28
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffe030
jmp 0x100febbe
mov edi, 0x32
jmp 0x100fe70b
movzx ecx, word [esi + 0x5a]
mov eax, 0x303
cmp ecx, eax
cmovb eax, ecx
cmp dword [esi + 0x620], 0
je 0x100fe99f
push 0
push 0xffffd009
call sym.nss3.dll_PR_SetError
add esp, 8
mov ebx, 0xffffd009
mov edi, 0x46
mov ecx, 2
push edi
push ecx
push esi
call fcn.100f4470
add esp, 0xc
push 1
push dword [esp + 0x50]
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
push 0
push ebx
call sym.nss3.dll_PR_SetError
add esp, 8
xor ebx, ebx
dec ebx
mov edi, dword [ebp + 0xc]
jmp 0x100febc9
test byte [esi + 0x1d], 0x60
je 0x100fea04
mov edi, dword [esi + 0xc4]
test edi, edi
je 0x100fe76f
push esi
call fcn.1010e6a0
add esp, 4
push edi
call fcn.1010d500
add esp, 4
mov dword [esi + 0xc4], 0
cmp dword [esi + 0xa24], 1
jne 0x100fe781
push esi
call fcn.100f2f50
add esp, 4
test byte [esi + 0x1d], 4
mov edi, dword [ebp + 0xc]
jne 0x100fe798
push dword [esi + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
push 3
push esi
call fcn.100f81a0
add esp, 8
mov ebx, eax
test byte [esi + 0x1d], 4
jne 0x100febc9
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
jmp 0x100febc9
cmp dword [esp + 0x7c], 0
je 0x100fe7f2
lea eax, [esi + 0x4d8]
push edi
push eax
push 0
call sym.nss3.dll_SECITEM_CopyItem_Util
add esp, 0xc
mov ebx, eax
test eax, eax
mov edi, dword [ebp + 0xc]
jne 0x100febc9
mov dword [esi + 0x4bc], 1
mov dword [esi + 0x450], 6
xor ebx, ebx
jmp 0x100fe737
push 0x28
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd052
jmp 0x100febbe
movzx eax, word [esi + 0x58]
cmp eax, 0x303
ja 0x100fe990
mov dword [esi + 0x450], 4
jmp 0x100ff75d
cmp dword [ebp + 0x10], 0x24
jne 0x100fea3b
lea eax, [esi + 0xfa]
lea ecx, [esi + 0x11e]
mov edi, dword [esp + 0x10]
test edi, edi
cmove eax, ecx
lea ecx, [esp + 0x7c]
mov edx, dword [ecx + 0x20]
mov dword [eax + 0x410], edx
movdqu xmm0, xmmword [ecx]
movdqu xmm1, xmmword [ecx + 0x10]
movdqu xmmword [eax + 0x400], xmm1
movdqu xmmword [eax + 0x3f0], xmm0
mov word [esi + 0x4e8], 0x24
push 0x24
push dword [ebp + 0xc]
push ecx
call sym.nss3.dll_NSS_SecureMemcmp
add esp, 0xc
test eax, eax
je 0x100fec75
push 0x28
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor edi, edi
xor eax, eax
cmp dword [esi + 0x60], edi
sete al
or eax, 0xffffd006
push edi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push edi
mov edi, dword [ebp + 0xc]
push 0xffffd057
jmp 0x100febbe
mov eax, dword [esi + 0x38]
or byte [esi + 0x54c], 1
test eax, eax
jne 0x100ff04a
test byte [esi + 0x1d], 4
jne 0x100fe8f8
push dword [esi + 0x174]
call fcn.100d4790
add esp, 4
mov eax, dword [esi + 0x3b8]
movzx ecx, word [esi + 0x58]
mov word [eax + 0x10], cx
movzx ecx, word [esi + 0x58]
mov edx, dword [esi + 0xa24]
cmp ecx, 0x304
jb 0x100ff009
cmp edx, 1
mov edx, 0xfefd
mov ecx, 0x303
cmove ecx, edx
jmp 0x100ff032
push 0x2f
push 2
push esi
call fcn.100f4470
add esp, 0xc
mov eax, 0xffffd087
push 0
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
cmp dword [0x101f4f80], 0
je 0x10101401
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10100728
mov eax, dword [eax + 0x28]
cmp eax, 0xffffd087
mov ebx, 0xffffd022
cmove ebx, eax
jmp 0x100febbb
push 0
push 0xffffe013
jmp 0x100fe72c
mov dword [esi + 0x450], 0x87
jmp 0x100ff75d
movzx ecx, word [esi + 0x24]
test cx, cx
je 0x100feffd
cmp cx, ax
ja 0x100fe6f2
movzx ecx, word [esi + 0x26]
cmp cx, ax
cmovae ecx, eax
mov eax, dword [esi + 0x38]
test eax, eax
je 0x100fe9d0
cmp word [esi + 0x58], cx
jne 0x100fe6f2
mov word [esi + 0x58], cx
jmp 0x100fe8d5
push ebx
call fcn.100f70c0
add esp, 4
mov ecx, dword [esi + 0x458]
mov edx, dword [esi + 0x45c]
lea esi, [esp + 0x74]
push esi
mov esi, dword [ebp + 8]
push eax
call fcn.100f7c90
add esp, 8
jmp 0x100fdf98
push 0x64
push 1
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd070
jmp 0x100febbe
mov edi, 0xffffd024
mov ebx, 0x32
push ebx
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push edi
jmp 0x100fe72c
push 0x2f
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor edi, edi
xor eax, eax
cmp dword [esi + 0x60], edi
sete al
or eax, 0xffffd006
push edi
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
push edi
push 0xffffd024
jmp 0x100fe72c
movzx eax, word [edi]
rol ax, 8
movzx eax, ax
lea ecx, [edi + 2]
mov dword [esp + 0x124], ecx
lea ecx, [edx - 2]
cmp ecx, eax
cmovb eax, ecx
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ebx, dword [eax + 8]
lock inc dword [ebx + 0x48]
test ebx, ebx
je 0x100feb3e
push 0x371
push ebx
call sym.nss3.dll_PK11_DoesMechanism
add esp, 8
test eax, eax
jne 0x100feaf3
lea eax, [ebx + 0x48]
lock dec dword [eax]
jne 0x100feac7
push ebx
call fcn.100cb320
add esp, 4
lea eax, [esp + 0x74]
mov dword [eax], 0x371
sub esp, 0x14
movdqa xmm0, xmmword [0x101b16e0]
movdqu xmmword [esp + 4], xmm0
mov dword [esp], eax
call fcn.100cf1d0
add esp, 0x14
mov ebx, eax
test eax, eax
je 0x100feb3e
test byte [esi + 0x1d], 4
jne 0x100feb07
push dword [esi + 0x174]
call fcn.100d4790
add esp, 4
mov eax, dword [esi + 0x11c]
cmp dword [esi + 0xa24], 1
movzx ecx, word [esi + 0x5a]
jne 0x100ff1cd
add ecx, 0xfffffcfe
cmp cx, 2
ja 0x100ff1ca
movsx ecx, cx
movzx ecx, word [ecx + ecx + 0x101c6084]
jmp 0x100ff1cd
push 0
push 0xffffe001
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100ff305
push 0
push 0xffffd08d
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100ff320
push 0xffffd043
call fcn.1010c480
add esp, 4
cmp dword [0x101f4f80], 0
je 0x10101489
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10100920
movzx ecx, word [esp + 0xc]
cmp ecx, 0x301
mov ebx, dword [eax + 0x28]
mov ecx, 0x33
mov eax, 0x28
cmovae eax, ecx
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push ebx
call sym.nss3.dll_PR_SetError
add esp, 8
xor ebx, ebx
dec ebx
movzx eax, word [esi + 0x58]
cmp eax, 0x304
jb 0x100fec0c
cmp dword [ebp + 0x14], 0
jne 0x100fec0c
mov eax, dword [esi + 0x3b0]
movzx ecx, word [esp + 0x1a]
cmp cx, word [eax + 0x4c]
je 0x100fec0c
push 0xa
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd035
call sym.nss3.dll_PR_SetError
add esp, 8
xor ebx, ebx
dec ebx
jmp 0x100fec5d
cmp dword [esi + 0xa24], 1
jne 0x100fec4f
test ebx, ebx
je 0x100fec48
cmp ebx, 0xffffffff
jne 0x100fec4f
cmp dword [0x101f4f80], 0
je 0x1010110e
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x100ffb50
cmp dword [eax + 0x28], 0xffffe892
jne 0x100fec4f
inc word [esi + 0x56e]
push dword [ebp + 0x10]
push 0x4e
push edi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov ecx, dword [esp + 0x148]
xor ecx, ebp
call fcn.10157a00
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
test byte [esi + 0x1d], 4
jne 0x100fec89
push dword [esi + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov eax, dword [esi + 0x4b4]
test edi, edi
je 0x100ff4e7
xor ebx, ebx
test eax, eax
jne 0x100ff6ba
push 0x23
push esi
call fcn.10105f30
add esp, 8
test eax, eax
je 0x100ff4ef
mov eax, dword [esi + 0x48c]
cmp dword [eax + 8], 2
je 0x100ff4ef
xor eax, eax
lea edi, [esp + 0x68]
mov dword [edi + 4], eax
mov dword [edi], eax
mov dword [edi + 8], eax
lea ecx, [esp + 0x120]
mov dword [ecx + 0x24], eax
mov dword [ecx + 0x20], eax
pxor xmm0, xmm0
movdqa xmmword [ecx + 0x10], xmm0
movdqa xmmword [ecx], xmm0
mov edx, dword [esi + 0x3bc]
push edi
push dword [edx + 0x24]
push eax
push eax
push ecx
push esi
call fcn.101079d0
add esp, 0x18
mov ebx, eax
test eax, eax
jne 0x100fed54
mov eax, dword [esp + 0x70]
add eax, 6
push eax
push 4
push dword [ebp + 8]
call fcn.100f6e20
add esp, 0xc
mov ebx, eax
test eax, eax
jne 0x100fed54
push 4
push 0
push 0x2a300
push dword [ebp + 8]
call fcn.1010c2b0
add esp, 0x10
mov ebx, eax
test eax, eax
jne 0x100fed54
push 2
push dword [esp + 0x74]
push dword [esp + 0x74]
push dword [ebp + 8]
call fcn.1010c330
add esp, 0x10
mov ebx, eax
cmp dword [esp + 0x6c], 0
je 0x100fed66
push 0
push edi
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
test ebx, ebx
jne 0x100ff6ba
jmp 0x100ff4ef
mov ebx, dword [esp + 0x64]
test ebx, ebx
je 0x100ff56e
lea eax, [esp + 0x74]
push eax
lea eax, [esp + 0x6c]
push eax
lea eax, [esp + 0x58]
push eax
push esi
call fcn.100f99d0
add esp, 0x10
test eax, eax
je 0x100feda3
xor ebx, ebx
dec ebx
jmp 0x100fdef6
cmp dword [esp + 0x68], 0
je 0x100ff423
mov eax, 0x2f
mov cl, 1
mov ebx, 0xffffd020
jmp 0x100ff57a
cmp eax, 3
je 0x100fee09
cmp eax, 4
je 0x100fd78e
movzx edx, word [ecx + 3]
rol dx, 8
movzx edx, dx
add ecx, 5
mov dword [esp + 0x50], ecx
add eax, 0xfffffffb
mov dword [esp + 0x68], eax
cmp eax, edx
jne 0x100ff6ae
lea eax, [esp + 0x68]
push eax
lea eax, [esp + 0x54]
push eax
push esi
call fcn.10105fb0
add esp, 0xc
test eax, eax
jne 0x100fe497
mov word [esp + 0x18], di
push esi
call fcn.10120d60
add esp, 4
test eax, eax
jne 0x100fde9e
mov ecx, dword [ebp + 8]
movzx eax, word [ecx + 0x58]
cmp word [ecx + 0x24], ax
ja 0x100fee39
movzx ecx, word [ecx + 0x26]
cmp cx, ax
jae 0x100ff84a
movzx eax, ax
cmp eax, 0x301
mov eax, 0x46
mov edx, 0x28
cmovae edx, eax
mov ebx, 0xffffd009
jmp 0x100fdff9
add ebx, 0xfffffffd
mov ecx, dword [ebp + 0xc]
movzx eax, byte [ecx + 3]
movzx edx, byte [ecx + 4]
shl eax, 0x10
shl edx, 8
or edx, eax
movzx eax, byte [ecx + 5]
lea ecx, [eax + edx]
dec ecx
cmp ecx, ebx
jae 0x100fdf65
or edx, eax
mov eax, dword [ebp + 0xc]
add eax, 6
lea ecx, [esp + 0x74]
mov dword [esp + 0x14], eax
mov dword [ecx + 4], eax
mov edi, edx
mov dword [ecx + 8], edx
xor eax, eax
push 1
push eax
push eax
push ecx
push dword [esi + 0x178]
call sym.nss3.dll_CERT_NewTempCertificate
add esp, 0x14
mov dword [esi + 0x78], eax
test eax, eax
je 0x100ff654
sub ebx, edi
je 0x100fefb0
mov ecx, dword [esp + 0x14]
add ecx, edi
mov edx, dword [ebp + 0x10]
sub edx, edi
add edx, 0xfffffffa
mov dword [esp + 0x20], 0
mov esi, dword [ebp + 8]
cmp ebx, 3
jb 0x100fdf65
cmp edx, 3
jb 0x100fe1fd
add ebx, 0xfffffffd
movzx eax, byte [ecx]
movzx edi, byte [ecx + 1]
shl eax, 0x10
shl edi, 8
or edi, eax
movzx eax, byte [ecx + 2]
mov dword [esp + 0x14], ecx
lea ecx, [eax + edi]
dec ecx
cmp ecx, ebx
mov ecx, dword [esp + 0x14]
jae 0x100fdf65
mov dword [esp + 0x28], edx
or edi, eax
lea eax, [ecx + 3]
mov dword [esp + 0x78], eax
mov dword [esp + 0x24], edi
mov dword [esp + 0x7c], edi
push 8
push dword [esi + 0x3e4]
call sym.nss3.dll_PORT_ArenaAlloc_Util
add esp, 8
test eax, eax
je 0x100fe234
mov edi, eax
push 1
xor eax, eax
push eax
push eax
lea eax, [esp + 0x80]
push eax
push dword [esi + 0x178]
call sym.nss3.dll_CERT_NewTempCertificate
add esp, 0x14
mov dword [edi + 4], eax
test eax, eax
je 0x100ff654
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
sub edx, ecx
sub ebx, ecx
mov dword [edi], 0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x100fef87
mov dword [eax], edi
jmp 0x100fef8d
mov dword [esi + 0x3e8], edi
mov eax, dword [esp + 0x14]
add ecx, eax
add ecx, 3
add edx, 0xfffffffd
mov dword [esp + 0x20], edi
test ebx, ebx
jne 0x100feed7
mov eax, dword [esi + 0x78]
test eax, eax
je 0x100ffb3c
mov ecx, eax
xor edx, edx
call fcn.1008e450
cmp dword [esp + 0x10], 0
jne 0x100ff7d1
mov eax, dword [ebp + 8]
movzx eax, word [eax + 0x58]
cmp eax, 0x303
ja 0x100ff7d1
push 5
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
test eax, eax
je 0x100ff7d1
mov esi, dword [ebp + 8]
mov dword [esi + 0x450], 9
jmp 0x100fe7fc
push 0
push 0xffffd014
jmp 0x100fe6f9
cmp edx, 1
jne 0x100ff032
movzx ecx, cx
xor edx, edx
cmp ecx, 0x303
setne dl
neg edx
or edx, 0xfffffefd
cmp ecx, 0x302
mov ecx, 0xfeff
cmovne ecx, edx
mov word [eax + 0x12], cx
test byte [esi + 0x1d], 4
jne 0x100ff04a
push dword [esi + 0x174]
call fcn.100d4880
add esp, 4
movzx eax, word [esi + 0x58]
cmp eax, 0x304
mov ecx, 2
jb 0x100ff171
mov ebx, 0xffffd070
cmp dword [esi + 0x38], 0
jne 0x100fe710
mov ebx, eax
push 0x2c
push esi
call fcn.10106140
add esp, 8
test eax, eax
je 0x100ff088
mov dword [esi + 0x620], 1
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x130]
push eax
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.101243c0
add esp, 0x20
test eax, eax
jne 0x100ff7a8
movzx eax, word [esi + 0x58]
cmp eax, 0x304
mov eax, ebx
jb 0x100ff171
cmp dword [esp + 0x128], 0
je 0x100ff764
cmp dword [esi + 0xa24], 1
je 0x100ff764
lea edi, [esi + 0x650]
xor eax, eax
push eax
push edi
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
lea eax, [esp + 0x120]
push eax
push edi
xor eax, eax
push eax
call sym.nss3.dll_SECITEM_CopyItem_Util
add esp, 0xc
test eax, eax
je 0x100ff764
cmp dword [0x101f4f80], 0
je 0x10101508
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10101097
push 0
push dword [eax + 0x28]
call sym.nss3.dll_PR_SetError
add esp, 8
cmp dword [0x101f4f80], 0
je 0x10101512
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101010b4
mov edi, dword [eax + 0x28]
mov eax, 0x50
jmp 0x100ff791
or byte [esi + 0x54c], 0x10
cmp dword [esi + 0x620], 0
je 0x100ff19f
push 0
push 0xffffd009
call sym.nss3.dll_PR_SetError
add esp, 8
mov edi, 0xffffd009
mov eax, 0x46
jmp 0x100ff791
cmp dword [esi + 0x624], 0
je 0x100ff583
push 0
push 0xffffd033
call sym.nss3.dll_PR_SetError
add esp, 8
mov edi, 0xffffd033
mov eax, 0xa
jmp 0x100ff791
xor ecx, ecx
dec ecx
rol cx, 8
lea edx, [esp + 0x68]
mov word [edx], cx
lea ecx, [esp + 0x74]
mov dword [ecx + 4], edx
mov dword [ecx + 8], 2
push eax
push 0
push ecx
push 0x370
push ebx
call sym.nss3.dll_PK11_KeyGen
add esp, 0x14
mov dword [esp + 0xc], eax
test eax, eax
jne 0x100ff20d
push 0xffffd045
call fcn.1010c480
add esp, 4
test byte [esi + 0x1d], 4
jne 0x100ff221
push dword [esi + 0x174]
call fcn.100d4880
add esp, 4
lock dec dword [ebx + 0x48]
jne 0x100ff230
push ebx
call fcn.100cb320
add esp, 4
mov eax, dword [esp + 0xc]
test eax, eax
je 0x100ff2f8
mov edi, eax
xor ebx, ebx
lea eax, [esp + 0x120]
push ebx
push 0x10c
push 0x371
push eax
mov eax, dword [esp + 0x20]
push dword [eax]
call sym.nss3.dll_PK11_PubUnwrapSymKey
add esp, 0x14
xor ecx, ecx
test eax, eax
sete cl
lea ecx, [ecx + ecx*2]
imul ecx, ecx, 0x55555555
mov edx, eax
xor eax, edi
mov dword [esp + 0x14], eax
and ecx, eax
xor edx, ecx
mov dword [esp + 0x10], edx
xor ecx, edi
mov edi, ecx
mov ecx, esi
push ebx
call fcn.100f5460
add esp, 4
test eax, eax
setne al
test edi, edi
mov edx, edi
setne cl
and cl, al
movzx eax, cl
lea eax, [eax + eax*2]
imul edi, eax, 0x55555555
and edi, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
xor eax, edi
mov dword [esp + 0x10], eax
xor edi, edx
push 1
push eax
push esi
call fcn.100f50f0
add esp, 0xc
mov dword [esp + 0xc], eax
push dword [esp + 0x10]
call sym.nss3.dll_PK11_FreeSymKey
add esp, 4
push edi
mov edi, dword [ebp + 0xc]
call sym.nss3.dll_PK11_FreeSymKey
add esp, 4
cmp dword [esp + 0xc], 0
je 0x100ff323
push 0x28
push 2
push esi
call fcn.100f4470
add esp, 0xc
jmp 0x100ff305
push 0xffffd045
call fcn.1010c480
add esp, 4
xor ebx, ebx
dec ebx
jmp 0x100ff323
push esi
call fcn.10115710
add esp, 4
push 0xffffd045
call fcn.1010c480
add esp, 4
mov edi, dword [ebp + 0xc]
push esi
call fcn.10115710
add esp, 4
test ebx, ebx
je 0x100ff371
cmp dword [0x101f4f80], 0
je 0x101013f7
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101006f9
mov edi, dword [eax + 0x28]
push 0x28
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push edi
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100fe737
xor ebx, ebx
cmp dword [esi + 0x78], 1
mov eax, 0
adc eax, 5
mov dword [esi + 0x450], eax
jmp 0x100febc9
lea ecx, [esp + 0x68]
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x64]
push eax
push 2
push ecx
push esi
call fcn.100f6ff0
add esp, 0x14
test eax, eax
mov ecx, 0xffffd01f
jne 0x100ff731
lea eax, [esp + 0x68]
push eax
call fcn.1008e1b0
add esp, 4
cmp eax, edi
ja 0x100ff714
cmp eax, 2
jb 0x100ff714
mov eax, dword [ebp + 8]
test byte [eax + 0x1f], 2
je 0x100ff3f5
xor eax, eax
push eax
push eax
lea eax, [esp + 0x70]
push eax
push ebx
push dword [ebp + 8]
call fcn.10114c80
add esp, 0x14
test eax, eax
jne 0x100ff71c
lea edi, [esp + 0x50]
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x64]
push eax
push 2
push edi
push dword [ebp + 8]
call fcn.100f6ff0
add esp, 0x14
test eax, eax
je 0x100ff8b9
mov ecx, 0xffffd01f
jmp 0x100ff731
mov dword [esi + 0x450], 0xd
mov eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
cmp dword [esi + 0x68c], 0
je 0x100ff44b
cmp dword [esi + 0x684], 0
je 0x100ff643
cmp dword [esi + 0xe4], 0
je 0x100ff643
mov dword [esp + 0xc], ebx
lea ebx, [ebx*4]
push ebx
call sym.nss3.dll_PORT_ZAlloc_Util
add esp, 4
mov dword [esi + 0x538], eax
push ebx
push dword [esp + 0x14]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0xc]
mov dword [esi + 0x53c], eax
mov eax, dword [esi]
mov dword [esp + 0x10], eax
mov ecx, dword [esi + 0xe4]
lea ebx, [esi + 0x3d4]
lea eax, [esi + 0x3d0]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0xe8]
mov dword [esp + 0xc], eax
call dword [section..00cfg]
push ebx
push dword [esp + 0x18]
lea eax, [esp + 0x7c]
push eax
push dword [esp + 0x1c]
push dword [esp + 0x1c]
call ecx
add esp, 0x14
mov edx, eax
cmp eax, 0xfffffffe
jne 0x100ff646
mov dword [esi + 0x534], 1
jmp 0x100ff64d
test eax, eax
je 0x100ff6b8
mov ecx, esi
call fcn.10103c90
mov ebx, eax
test eax, eax
jne 0x100ff6ba
mov ebx, esi
mov edi, dword [esi + 0x17c]
cmp dword [0x101f4f80], 0
je 0x101014ba
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10101030
cmp edi, eax
sete byte [esp + 0xc]
cmp dword [esp + 0x10], 0
mov esi, ebx
jne 0x100ff543
cmp dword [esi + 0x38], 0
je 0x100ff9a9
xor eax, eax
mov cl, byte [esp + 0xc]
mov al, cl
shl eax, 0x1e
mov edx, eax
or edx, 0x8000000
cmp dword [esi + 0xa24], 1
cmovne edx, eax
mov ecx, esi
call fcn.10103d30
mov ebx, eax
jmp 0x100ff6ba
mov eax, 0x28
mov ebx, 0xffffd087
xor ecx, ecx
mov edx, dword [esp + 0x10]
jmp 0x100fdec5
mov ebx, eax
mov eax, dword [esp + 0x40]
test eax, eax
je 0x100ff778
push eax
push 0
push dword [esp + 0x44]
call sub.VCRUNTIME140.dll_memchr
add esp, 0xc
test eax, eax
je 0x100ff778
cmp dword [esi + 0xa24], 1
jne 0x100ff5bc
cmp dword [esp + 0x70], 0
jne 0x100ff778
push 1
push esi
call fcn.10106170
add esp, 8
mov edi, eax
lea eax, [esi + 0x550]
push eax
call fcn.10106100
add esp, 4
test edi, edi
je 0x100ff91d
cmp dword [0x101f4f80], 0
je 0x101014fe
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10101061
mov eax, dword [eax + 0x28]
cmp eax, 0xffffd087
mov ebx, 0xffffd01c
cmove ebx, eax
jmp 0x100fe71b
push dword [ebp + 0x10]
push edi
push 0xf
push esi
call fcn.100fd000
add esp, 0x10
test eax, eax
je 0x100ff7e4
mov ebx, eax
push 0
push 0xffffe001
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100febc9
xor edx, edx
dec edx
mov ecx, esi
call fcn.100f9ec0
xor ebx, ebx
jmp 0x100fdef6
cmp dword [0x101f4f80], 0
je 0x101014b0
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10101005
mov eax, dword [eax + 0x28]
mov ebx, eax
add eax, 0x1fee
cmp eax, 2
jb 0x100ff690
cmp ebx, 0xffffe890
jne 0x100ff80c
movzx ecx, word [esp + 0xc]
mov eax, 0x50
cmp ecx, 0x300
mov edi, dword [ebp + 0xc]
ja 0x100fe297
jmp 0x100fe2a3
mov edx, 0x32
jmp 0x100fdff9
xor ebx, ebx
test byte [esi + 0x1d], 4
jne 0x100ff6ce
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test ebx, ebx
mov edi, dword [ebp + 0xc]
jne 0x100febc9
cmp dword [esi + 0x540], 0
je 0x100ff709
cmp dword [esi + 0x544], 0
je 0x100ff7f3
push 0
push 0xffffe001
call sym.nss3.dll_PR_SetError
add esp, 8
xor ebx, ebx
dec ebx
mov esi, dword [ebp + 8]
jmp 0x100febc9
push esi
call fcn.100fc820
jmp 0x100fe3a1
mov dword [esp + 0x10], 0xffffd01f
mov eax, 0x2f
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
mov ecx, dword [esp + 0x10]
push ecx
call fcn.1010c480
add esp, 4
push 0
push eax
call sym.nss3.dll_PR_SetError
add esp, 8
xor ebx, ebx
dec ebx
mov edi, dword [ebp + 0xc]
test ebx, ebx
jne 0x100febc9
mov dword [esi + 0x450], 0xc
xor ebx, ebx
jmp 0x100febc9
cmp dword [esp + 0x40], 1
jne 0x100ff778
mov eax, dword [esp + 0x3c]
cmp byte [eax], 0
je 0x100ffa2d
push 0
push 0xffffd01c
call sym.nss3.dll_PR_SetError
add esp, 8
mov edi, 0xffffd01c
mov eax, 0x2f
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push edi
call sym.nss3.dll_PR_SetError
add esp, 8
cmp dword [0x101f4f80], 0
je 0x1010147f
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10100903
mov ebx, dword [eax + 0x28]
jmp 0x100fe71b
mov esi, dword [ebp + 8]
push esi
call fcn.100fc150
add esp, 4
mov ebx, eax
jmp 0x100fe737
mov dword [esi + 0x450], 6
jmp 0x100ff75d
mov esi, dword [ebp + 8]
mov dword [esi + 0x544], 0x100fc820
push 0
push 0xffffe892
jmp 0x100febbe
movzx eax, word [esi + 0x58]
cmp ebx, 0xffffe01d
jg 0x100ffa4c
lea ecx, [ebx + 0x1ff5]
cmp ecx, 0xa
ja case.default.0x100ff82b
jmp dword [ecx*4 + 0x101c62b0]
movzx eax, ax
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx]
add eax, 0x2e
jmp 0x100ffc87
mov edx, dword [esp + 0x20]
or edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x14]
or ebx, dword [esp + 0x30]
mov edi, dword [esp + 0xc]
or edi, dword [esp + 0x24]
or edi, edx
mov edx, dword [esp + 0x10]
or edx, dword [esp + 0x28]
or edx, ebx
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], edi
or edx, edi
je 0x100ffa65
movzx edx, ax
cmp edx, 0x304
jae 0x100ffa90
mov ebx, 0xffffd01d
mov edx, dword [ebp + 8]
cmp dword [edx + 0x620], 0
jne 0x100fe497
mov ebx, 0xffffd0a0
cmp dword [edx + 0x60c], 1
je 0x100fe497
jmp 0x100ffa90
push edi
push ebx
call fcn.10114bd0
add esp, 8
test eax, eax
je 0x100ffb2f
mov eax, dword [ebp + 8]
movzx eax, word [eax + 0x58]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
cmp eax, 0x303
jb 0x100ffc12
mov eax, dword [esp + 0x64]
cmp eax, 2
jae 0x100ffba8
push 0x32
push 2
push esi
call fcn.100f4470
add esp, 0xc
xor eax, eax
cmp dword [esi + 0x60], 0
sete al
or eax, 0xffffd006
push 0
push eax
jmp 0x101001bb
mov ecx, dword [ebp + 8]
movzx eax, word [ecx + 0x26]
cmp ax, word [ecx + 0x58]
jbe 0x100ff959
mov eax, dword [esp + 0x58]
cmp eax, 2
jb 0x100ff959
xor ecx, ecx
inc ecx
mov edx, dword [esp + 0x54]
movzx edi, word [edx + ecx - 1]
rol di, 8
movzx edi, di
cmp edi, 0x5600
je 0x100ffca2
add ecx, 2
cmp ecx, eax
jb 0x100ff93a
push 0xff01
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
test eax, eax
jne 0x100ffe00
mov eax, dword [esp + 0x58]
cmp eax, 2
jb 0x100ffe00
xor ecx, ecx
inc ecx
mov edx, dword [esp + 0x54]
movzx edi, word [edx + ecx - 1]
rol di, 8
movzx edi, di
cmp edi, 0xff
je 0x100ffddd
add ecx, 2
cmp ecx, eax
jb 0x100ff985
jmp 0x100ffe00
mov eax, dword [esi + 0x9c0]
test eax, eax
je 0x100ff543
cmp dword [esi + 0x9c4], 3
je 0x100ff543
lea ecx, [eax + 2]
and ecx, 0x1f
mov edi, 0x20
sub edi, ecx
add eax, edi
add eax, 2
push eax
push 0x43
push esi
call fcn.100f6e20
add esp, 0xc
mov ebx, eax
test eax, eax
jne 0x100ff6ba
push 1
push dword [esi + 0x9c0]
push dword [esi + 0x9bc]
push esi
call fcn.1010c330
add esp, 0x10
mov ebx, eax
test eax, eax
jne 0x100ff6ba
push 1
push edi
push 0x101c6010
push esi
call fcn.1010c330
add esp, 0x10
mov ebx, eax
test eax, eax
jne 0x100ff6ba
jmp 0x100ff543
cmp dword [esi + 0x624], 0
je 0x100ff5a8
cmp dword [esi + 0x620], 0
jne 0x100ff5a8
jmp 0x100ff1ac
lea ecx, [ebx + 0x1fa6]
cmp ecx, 2
jae 0x100ffb6d
mov eax, 0x2e
jmp 0x100ffc87
mov ebx, 0xffffd09a
cmp dword [esi + 0x620], 0
mov edx, 0xa
jne 0x100fdff9
movzx edx, ax
mov ebx, 0xffffd01d
cmp edx, 0x304
jb 0x100fe497
mov edx, dword [ebp + 8]
mov edx, dword [edx + 0x38]
test edx, edx
je 0x100ffaaa
mov edi, dword [esi + 0x3b0]
cmp ax, word [edi + 0x10]
jne 0x100ffc98
mov edi, dword [esi + 0x1c]
bt edi, 0x1d
jae 0x100ffac0
cmp dword [esi + 0xa24], 1
jne 0x100ffcb1
mov ecx, dword [ebp + 8]
or byte [ecx + 0x54c], 1
test edx, edx
jne 0x100ffd6b
mov ecx, dword [esp + 0x10]
or ecx, dword [esp + 0xc]
je 0x100ffd6b
bt edi, 0xa
jb 0x100ffaf8
push dword [esi + 0x174]
call fcn.100d4790
add esp, 4
movzx eax, word [esi + 0x58]
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x3b8]
mov word [ecx + 0x10], ax
movzx eax, word [edx + 0x58]
mov edx, dword [edx + 0xa24]
cmp eax, 0x304
jb 0x100ffd29
cmp edx, 1
mov edx, 0xfefd
mov eax, 0x303
cmove eax, edx
jmp 0x100ffd50
mov dword [esp + 0x10], 0xffffd08d
jmp 0x100ff71c
push 0
push 0xffffe005
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100fefb9
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100fec3f
cmp ebx, 0xffffe01e
jne case.0x100ff82b.8178
movzx eax, ax
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2]
add eax, 0x2d
jmp 0x100ffc87
mov eax, 0x2b
cmp ebx, 0xffffe001
je 0x100ffc87
mov eax, 0x2a
jmp 0x100ffc87
mov ecx, dword [esp + 0x60]
movzx edx, word [ecx]
rol dx, 8
movzx edx, dx
add ecx, 2
mov dword [esp + 0x60], ecx
add eax, 0xfffffffe
mov dword [esp + 0x64], eax
mov dword [esp + 0x14], edx
mov ecx, edx
call fcn.100f7220
test eax, eax
je 0x101001a7
mov eax, 0xd4
add eax, dword [esi + 0x78]
push eax
push dword [esp + 0x18]
push esi
call fcn.100f7460
add esp, 0xc
mov dword [esp + 0x10], 0xffffd01f
test eax, eax
mov eax, 0x2f
jne 0x100ff721
push dword [esp + 0x14]
call fcn.100f70c0
add esp, 4
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x38]
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x64]
push eax
push 2
push ecx
push esi
call fcn.100f6ff0
add esp, 0x14
test eax, eax
mov ecx, 0xffffd01f
jne 0x100ff731
cmp dword [esp + 0x64], 0
je 0x10100232
movzx eax, word [esp + 0xc]
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2]
add eax, 0x2f
mov dword [esp + 0x10], 0xffffd01f
jmp 0x100ff721
mov eax, 0x2d
jmp 0x100ffc87
mov eax, 0x2c
jmp 0x100ffc87
movzx eax, ax
xor ecx, ecx
cmp eax, 0x301
setae cl
lea eax, [ecx + ecx*2]
add eax, 0x2e
push eax
push 2
push esi
call fcn.100f4470
add esp, 0xc
jmp 0x100fdd68
mov edx, 0x46
jmp 0x100fee4e
mov ebx, 0xffffd083
mov edi, 0x56
jmp 0x10100152
mov ebx, dword [esi + 0x714]
test bx, bx
cmovne ecx, ebx
movzx ebx, cx
cmp ebx, 0x303
jb 0x100ffac0
cmp cx, ax
jbe 0x100ffac0
mov ecx, 0x4e574f44
mov ebx, dword [esi + 0x408]
xor ebx, ecx
mov dword [esp + 0x14], ebx
mov ecx, 0x1445247
xor ecx, dword [esi + 0x40c]
mov ebx, 0xffffd01d
or ecx, dword [esp + 0x14]
je 0x100fe497
mov ecx, 0x4e574f44
xor ecx, dword [esi + 0x408]
mov dword [esp + 0x14], ecx
mov ecx, 0x445247
xor ecx, dword [esi + 0x40c]
or ecx, dword [esp + 0x14]
jne 0x100ffac0
jmp 0x100fe497
cmp edx, 1
jne 0x100ffd50
movzx eax, ax
xor edx, edx
cmp eax, 0x303
setne dl
neg edx
or edx, 0xfffffefd
cmp eax, 0x302
mov eax, 0xfeff
cmovne eax, edx
mov word [ecx + 0x12], ax
mov eax, dword [ebp + 8]
test byte [eax + 0x1d], 4
jne 0x100ffd6b
push dword [eax + 0x174]
call fcn.100d4880
add esp, 4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc4]
test eax, eax
je 0x100ffdc0
movzx ecx, word [eax + 0x4a]
cmp ecx, 0x303
ja 0x100ffdc0
movzx ecx, byte [eax + 0x78]
cmp dword [esp + 0x1c], ecx
jne 0x101002a3
mov bl, 1
cmp dword [esp + 0x1c], 0
je 0x101005a6
add eax, 0x79
push dword [esp + 0x1c]
push dword [esp + 0x128]
push eax
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
sete cl
jmp 0x101002a7
mov eax, dword [ebp + 8]
test byte [eax + 0x1f], 8
je 0x100ffdd6
cmp dword [eax + 0xa24], 1
jne 0x101001c8
xor ebx, ebx
jmp 0x101002a5
lea eax, [esp + 0x74]
mov dword [eax], 0x101c5fa4
lea ecx, [esp + 0x48]
mov dword [ecx], 5
push 1
push ecx
push eax
push dword [ebp + 8]
call fcn.10106470
add esp, 0x10
movzx eax, bx
mov dword [esp + 0x14], eax
cmp eax, 0x303
jbe 0x100ffe5e
mov eax, dword [ebp + 8]
cmp dword [eax + 0x718], 0
je 0x100fff54
mov edi, dword [eax + 0xc4]
mov ebx, dword [esp + 0x128]
lea eax, [ebx - 1]
cmp eax, 0x1f
ja 0x100fff58
mov dword [esp + 0xc], edi
mov byte [edi + 0x78], bl
lea eax, [edi + 0x79]
push ebx
push dword [esp + 0x128]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0xc]
mov byte [eax + 0x78], bl
jmp 0x100fff5c
mov eax, dword [ebp + 8]
cmp dword [eax + 0x38], 0
je 0x100ffe85
test byte [eax + 0x1d], 0x40
je 0x100ffe85
push 0xff01
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
test eax, eax
je 0x101003d5
mov eax, dword [ebp + 8]
test byte [eax + 0x1d], 0x80
jne 0x100ffe9a
cmp dword [eax + 0x38], 0
je 0x100ffeb2
cmp dword [eax + 0x54], 0
je 0x100ffeb2
push 0xff01
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
test eax, eax
je 0x10100148
push 0x23
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
test eax, eax
je 0x100ffed3
mov eax, dword [ebp + 8]
cmp dword [eax + 0x954], 0
je 0x100ffe0e
mov ebx, dword [esp + 0x128]
xor edi, edi
test ebx, ebx
je 0x100fff69
mov eax, dword [ebp + 8]
test byte [eax + 0x1c], 0x80
jne 0x100fff69
mov edi, dword [0x101f6078]
test edi, edi
je 0x1010045c
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x178]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x124]
mov dword [esp + 0xc], eax
lea eax, [ecx + 0xb0]
mov dword [esp + 0x20], eax
push ecx
call fcn.10116bd0
add esp, 4
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], edx
mov ecx, edi
call dword [section..00cfg]
push dword [esp + 0x28]
push ebx
push dword [esp + 0x14]
push dword [esp + 0x2c]
push dword [esp + 0x40]
push dword [esp + 0x38]
call edi
add esp, 0x18
mov edi, eax
jmp 0x100fff69
xor edi, edi
jmp 0x100fff69
mov byte [edi + 0x78], 0
mov eax, dword [ebp + 8]
mov dword [eax + 0xc4], 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc4]
test eax, eax
je 0x100fff8c
push eax
call fcn.1010d500
add esp, 4
mov eax, dword [ebp + 8]
mov dword [eax + 0xc4], 0
mov dword [esp + 0xc], 0
test edi, edi
je 0x100fffb0
cmp dword [edi + 0x18], 0
jne 0x100fffac
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x1c]
test al, 4
jne 0x1010015f
mov dword [esp + 0xc], edi
mov eax, dword [ebp + 8]
cmp dword [eax + 0xa24], 1
jne 0x100fffd1
mov esi, dword [ebp + 8]
push esi
call fcn.100f20c0
add esp, 4
push esi
call fcn.100f3130
add esp, 4
cmp dword [esp + 0x14], 0x304
jb 0x10100037
mov eax, dword [ebp + 8]
cmp dword [eax + 0x684], 0
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
je 0x100ffff7
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx + 4]
mov ecx, dword [ecx + 8]
push ecx
push eax
push dword [esp + 0x14]
lea eax, [esp + 0x5c]
push eax
push dword [ebp + 8]
call fcn.1011cff0
add esp, 0x14
mov edi, eax
push 1
push dword [esp + 0x50]
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
mov dword [esp + 0x4c], 0
test edi, edi
jne 0x10100c5c
xor ebx, ebx
mov esi, dword [ebp + 8]
jmp 0x100fe737
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 1
push dword [ebp + 8]
call fcn.100fd000
add esp, 0x10
mov ebx, 0x50
mov edi, 0xffffe001
test eax, eax
jne 0x101000df
cmp dword [esp + 0xc], 0
je 0x1010009c
mov eax, dword [ebp + 8]
movzx eax, word [eax + 0x58]
mov word [esp + 0x74], ax
mov word [esp + 0x76], ax
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x9a]
mov edi, 0x210
mov ecx, dword [ebp + 8]
cmp word [ecx + edi], ax
je 0x101003e7
add edi, 4
cmp edi, 0x32c
jne 0x10100084
push 1
lea eax, [esp + 0x54]
push eax
push dword [ebp + 8]
call fcn.100fa060
add esp, 0xc
test eax, eax
je 0x10100871
cmp dword [0x101f4f80], 0
je 0x10101530
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10101366
mov edi, dword [eax + 0x28]
mov ebx, 0x28
push ebx
push 2
push dword [ebp + 8]
call fcn.100f4470
add esp, 0xc
mov bl, 1
cmp dword [esp + 0xc], 0
je 0x10100c51
mov eax, dword [esp + 0xc]
mov ecx, dword [ebp + 8]
cmp eax, dword [ecx + 0xc4]
je 0x10100120
push dword [ebp + 8]
call fcn.1010e6a0
add esp, 4
push dword [esp + 0xc]
call fcn.1010d500
add esp, 4
test bl, bl
jne 0x10100c51
mov eax, dword [ebp + 8]
test byte [eax + 0x1d], 4
jne 0x10100c51
push dword [eax + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
jmp 0x10100c51
mov ebx, 0xffffd071
mov edi, 0x28
mov ecx, 2
mov esi, dword [ebp + 8]
jmp 0x100fe710
shr eax, 3
and eax, 3
cmp eax, 1
je 0x10100185
cmp eax, 3
je 0x10100185
cmp eax, 2
jne 0x100fffac
mov eax, dword [ebp + 8]
cmp dword [eax + 0x38], 0
jne 0x100fffac
lock inc dword [0x101f5a38]
push edi
call fcn.1010d500
add esp, 4
mov eax, dword [ebp + 8]
mov dword [eax + 0x718], 0
jmp 0x100fffb0
push 0x2f
push 2
push esi
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd087
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x100ff419
mov al, 1
xor ebx, ebx
cmp dword [esp + 0x1c], 0x20
jne 0x10100455
mov ecx, 0x5a
mov edx, dword [ebp + 8]
movzx edx, byte [edx + ebx + 0x410]
movzx ecx, cl
add ecx, edx
mov byte [esp + ebx + 0x74], cl
inc ebx
cmp ebx, 0x20
jne 0x101001dc
mov ecx, dword [esp + 0x124]
movdqu xmm0, xmmword [esp + 0x74]
movdqu xmm1, xmmword [esp + 0x84]
movdqu xmm2, xmmword [ecx]
pcmpeqb xmm2, xmm0
movdqu xmm0, xmmword [ecx + 0x10]
pcmpeqb xmm0, xmm1
pand xmm0, xmm2
pmovmskb ecx, xmm0
cmp ecx, 0xffff
sete cl
xor ebx, ebx
jmp 0x101002a9
movzx eax, word [esp + 0xc]
cmp eax, 0x301
mov eax, 0x33
mov ecx, 0x28
cmovae ecx, eax
mov dword [esp + 0xc], ecx
lea eax, [esp + 0x74]
mov ecx, dword [ebp + 8]
mov edx, dword [esp + 0x10]
push 0
push dword [esp + 0x5c]
push dword [esp + 0x5c]
push dword [esp + 0x7c]
push dword [esp + 0x7c]
push dword [esp + 0x13c]
push dword [esp + 0x13c]
push eax
call fcn.10103b80
add esp, 0x20
test eax, eax
je 0x10100466
push 0xffffd044
call fcn.1010c480
add esp, 4
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xc]
jmp 0x100ff721
mov bl, 1
xor ecx, ecx
xor eax, eax
mov edx, dword [esp + 0x2c]
movzx edi, word [edx]
cmp edi, 0x303
ja 0x101002c6
mov ebx, 0xffffd01d
test al, cl
je 0x101002f8
jmp 0x101006ec
xor edx, edx
cmp dword [esp + 0x1c], 0
sete dl
mov esi, dword [ebp + 8]
cmp dword [esi + 0xa24], 1
movzx ecx, cl
cmove ecx, edx
test al, al
cmovne edx, ecx
test bl, bl
cmovne edx, ecx
mov ebx, 0xffffd01d
cmp dl, 1
jne 0x100fe497
mov ecx, dword [ebp + 8]
call fcn.100f3ca0
test eax, eax
je 0x101006c8
rol word [esp + 0x18], 8
mov ecx, 0x210
movzx eax, word [esp + 0x18]
mov edx, dword [ebp + 8]
cmp word [edx + ecx], ax
je 0x10100338
add ecx, 4
cmp ecx, 0x32c
jne 0x10100318
push 0
push 0xffffd002
jmp 0x101006c0
mov esi, dword [ebp + 8]
add ecx, esi
lea eax, [esp + 0x74]
mov word [eax], di
mov word [eax + 2], di
movzx edx, byte [esi + 0x3e0]
push esi
mov edi, eax
push eax
call fcn.100f4120
add esp, 8
test eax, eax
je 0x10100580
mov eax, dword [ebp + 8]
cmp dword [eax + 0x620], 0
je 0x10100384
movzx eax, word [esp + 0x18]
mov ecx, dword [ebp + 8]
cmp word [ecx + 0x490], ax
jne 0x101006aa
movzx eax, word [esp + 0x18]
mov ecx, dword [ebp + 8]
mov word [ecx + 0x490], ax
xor eax, eax
movzx ecx, word [esp + 0x18]
cmp word [eax + 0x101c57c0], cx
je 0x101005af
add eax, 0x14
cmp eax, 0x5a0
jne 0x1010039a
xor edi, edi
push edi
push 0xffffd016
call sym.nss3.dll_PR_SetError
add esp, 8
mov eax, dword [ebp + 8]
mov dword [eax + 0x494], edi
push edi
push 0xffffe001
jmp 0x101006c0
mov ebx, 0xffffd070
mov edi, 0x64
xor ecx, ecx
inc ecx
jmp 0x10100157
call fcn.100f3ca0
test eax, eax
je 0x10100d0b
mov esi, dword [ebp + 8]
add edi, esi
movzx edx, byte [esi + 0x3e0]
lea eax, [esp + 0x74]
mov ecx, edi
push esi
push eax
call fcn.100f4120
add esp, 8
test eax, eax
je 0x1010009c
mov ecx, dword [esp + 0x58]
cmp ecx, 2
jb 0x1010009c
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], eax
movzx eax, word [edi]
xor edi, edi
inc edi
mov edx, dword [esp + 0x14]
movzx edx, word [edx + edi - 1]
rol dx, 8
cmp dx, ax
je 0x1010078f
add edi, 2
cmp edi, ecx
jb 0x10100433
jmp 0x1010009c
xor ecx, ecx
jmp 0x101002a9
mov ebx, 0xffffd067
jmp 0x10100c80
mov ecx, 0xd4
mov eax, dword [ebp + 8]
add ecx, dword [eax + 0x78]
call fcn.1008e690
test eax, eax
je 0x10100716
mov ecx, eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x78]
push eax
push dword [esp + 0x1c]
mov dword [esp + 0x1c], ecx
push ecx
push dword [ebp + 8]
call fcn.100f4a60
add esp, 0x14
mov dword [esp + 0x14], eax
push dword [esp + 0x10]
call sym.nss3.dll_SECKEY_DestroyPublicKey
add esp, 4
cmp dword [esp + 0x14], 0
jne 0x10100289
push 0x800
call sym.nss3.dll_PORT_NewArena_Util
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
je 0x10100576
push 0xac
push dword [esp + 0x14]
call sym.nss3.dll_PORT_ArenaAlloc_Util
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x10100568
mov eax, dword [esp + 0xc]
add eax, 0x10
xor ecx, ecx
push 0x9c
push ecx
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
mov dword [eax], ecx
mov dword [eax + 4], 4
xor edx, edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
add eax, 0x14
push ebx
push eax
push ecx
call sym.nss3.dll_SECITEM_CopyItem_Util
add esp, 0xc
test eax, eax
jne 0x10100568
mov eax, dword [esp + 0xc]
add eax, 0x20
lea ecx, [esp + 0x68]
push ecx
push eax
push dword [esp + 0x18]
call sym.nss3.dll_SECITEM_CopyItem_Util
add esp, 0xc
test eax, eax
jne 0x10100568
mov eax, dword [esp + 0xc]
add eax, 0x2c
push edi
push eax
push dword [esp + 0x18]
call sym.nss3.dll_SECITEM_CopyItem_Util
add esp, 0xc
test eax, eax
je 0x10101022
push 0
push dword [esp + 0x14]
call sym.nss3.dll_PORT_FreeArena_Util
add esp, 8
mov ecx, 0xffffe013
jmp 0x100ff731
movzx eax, word [esp + 0x18]
push edi
push eax
call fcn.100f3b60
add esp, 8
test eax, eax
mov eax, 0xffffd079
mov ecx, 0xffffd002
cmove ecx, eax
push 0
push ecx
jmp 0x101006c0
xor eax, eax
mov cl, 1
jmp 0x101002a9
mov edx, dword [ebp + 8]
or byte [edx + 0x54c], 2
mov ecx, dword [esp + 0xc]
or dword [esp + 0x10], ecx
lea eax, [eax + 0x101c57c0]
mov dword [edx + 0x494], eax
mov eax, dword [eax + 0xc]
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x101c5d60]
mov dword [edx + 0x48c], eax
je 0x10100762
push dword [ebp + 8]
call fcn.100f6a00
add esp, 4
test eax, eax
jne 0x101006c8
mov esi, dword [ebp + 8]
push esi
call fcn.100f3130
add esp, 4
push 2
push esi
call fcn.10106170
add esp, 8
mov dword [esp + 0x10], eax
lea eax, [esi + 0x550]
push eax
call fcn.10106100
add esp, 4
mov ebx, 0xffffd01d
mov edx, 0x2f
cmp dword [esp + 0x10], 0
jne 0x100fdff9
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 2
push esi
call fcn.100fd000
add esp, 0x10
mov ecx, 0xffffd01d
test eax, eax
jne 0x100fe007
mov eax, dword [esp + 0x2c]
movzx eax, word [eax]
cmp eax, 0x304
jb 0x10100de7
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.1011ed50
add esp, 0xc
test eax, eax
je 0x10100ff9
cmp dword [0x101f4f80], 0
je 0x1010156c
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101014c4
mov ecx, dword [eax + 0x28]
jmp 0x100fe007
push 0x2f
push 2
push dword [ebp + 8]
call fcn.100f4470
add esp, 0xc
push 0
push 0xffffd01d
call sym.nss3.dll_PR_SetError
add esp, 8
cmp dword [0x101f4f80], 0
je 0x10101526
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10101349
mov ebx, dword [eax + 0x28]
mov edx, 0x2f
mov esi, dword [ebp + 8]
jmp 0x100fdff9
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ff351
push 0xffffd043
call fcn.1010c480
add esp, 4
jmp 0x10100289
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100fe96f
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100fe28f
mov esi, dword [ebp + 8]
push esi
call fcn.100f3130
add esp, 4
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.1011e940
add esp, 0xc
test eax, eax
mov ecx, 0xffffd01d
jne 0x100fe007
jmp 0x100fe7fc
mov ecx, dword [ebp + 8]
mov word [ecx + 0x490], ax
xor ecx, ecx
cmp word [ecx + 0x101c57c0], ax
je 0x10100812
add ecx, 0x14
cmp ecx, 0x5a0
jne 0x1010079b
xor edi, edi
push edi
push 0xffffd016
call sym.nss3.dll_PR_SetError
add esp, 8
mov eax, dword [ebp + 8]
mov dword [eax + 0x494], edi
push edi
push 0xffffe001
call sym.nss3.dll_PR_SetError
add esp, 8
jmp 0x10100848
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100fe15e
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100fe314
lea eax, [ecx + 0x101c57c0]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x494], eax
mov eax, dword [eax + 0xc]
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x101c5d60]
mov dword [ecx + 0x48c], eax
or byte [ecx + 0x54c], 2
push ecx
call fcn.100f6a00
add esp, 4
test eax, eax
je 0x10100871
cmp dword [0x101f4f80], 0
je 0x10101558
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10101462
mov edi, dword [eax + 0x28]
jmp 0x101000df
mov dword [esp + 0x54], 0
cmp dword [esp + 0xc], 0
je 0x10100ba0
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x4a]
mov ecx, dword [ebp + 8]
cmp ax, word [ecx + 0x58]
jne 0x10100b77
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x9a]
cmp ax, word [ecx + 0x490]
jne 0x10100b77
mov eax, dword [esp + 0xc]
push dword [eax + 0x2c]
push dword [eax + 0x60]
mov esi, dword [ebp + 8]
push esi
call fcn.1010a540
add esp, 0xc
mov dword [esi + 0x9c], eax
test eax, eax
je 0x10100b77
cmp dword [eax + 0x10], 0
je 0x10100b77
push 0x17
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
mov ecx, dword [esp + 0xc]
mov cl, byte [ecx + 0xcf]
test eax, eax
je 0x1010093d
test cl, cl
jne 0x10100950
jmp 0x10100b77
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ff7c9
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100feb94
test cl, cl
je 0x10100950
mov eax, 0x28
mov edi, 0xffffd088
jmp 0x10100d34
mov eax, dword [ebp + 8]
cmp dword [eax + 0xc4], 0
je 0x10100987
push esi
call fcn.1010e6a0
add esp, 4
mov eax, dword [esi + 0xc4]
cmp eax, dword [esp + 0xc]
je 0x1010097a
push eax
call fcn.1010d500
add esp, 4
mov eax, dword [ebp + 8]
mov dword [eax + 0xc4], 0
xor ebx, ebx
mov dword [esp + 0x74], ebx
mov ecx, dword [esp + 0xc]
lea eax, [ecx + 0x9d]
mov dword [esp + 0x78], eax
movzx eax, byte [ecx + 0xcd]
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 8]
push dword [eax + 0x11c]
push dword [ecx + 0xd0]
push ebx
push eax
call fcn.100f8d80
add esp, 0x10
test eax, eax
je 0x10100b77
mov edi, eax
mov ecx, dword [ebp + 8]
movzx eax, word [ecx + 0x58]
cmp eax, 0x301
mov eax, 0x2800
cmovae ebx, eax
lea eax, [esp + 0x74]
push dword [ecx + 0x11c]
push ebx
push 0x30
push 0x10c
push 0x371
push eax
push 0
mov eax, dword [esp + 0x28]
push dword [eax + 0xd0]
push edi
call fcn.100fa8f0
add esp, 0x24
mov ebx, eax
push edi
call sym.nss3.dll_PK11_FreeSymKey
add esp, 4
mov dword [esp + 0x14], ebx
test ebx, ebx
je 0x10100b77
mov eax, dword [esp + 0xc]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xc4], eax
mov edi, dword [eax + 0x18]
test edi, edi
je 0x10100a4c
push edi
call fcn.1009bef0
add esp, 4
test eax, eax
je 0x10100a46
lock inc dword [eax + 4]
mov eax, dword [ebp + 8]
mov dword [eax + 0x78], edi
lock inc dword [0x101f5a30]
mov eax, dword [ebp + 8]
cmp dword [eax + 0x718], 0
je 0x10100a66
lock inc dword [0x101f5a44]
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x4b4], 1
mov edi, dword [esp + 0xc]
mov eax, dword [edi + 0x60]
mov dword [ebx + 0x80], eax
mov eax, dword [edi + 0x64]
mov dword [ebx + 0x84], eax
mov eax, dword [edi + 0x68]
mov dword [ebx + 0x8c], eax
mov eax, dword [edi + 0x6c]
mov dword [ebx + 0x90], eax
push dword [edi + 0x70]
call fcn.10114b20
add esp, 4
mov dword [ebx + 0x98], eax
mov eax, dword [edi + 0x74]
mov dword [ebx + 0x88], eax
mov eax, dword [ebx + 0x9c]
mov edi, dword [eax + 0x10]
test edi, edi
je 0x10100ad3
push edi
call fcn.1009bef0
add esp, 4
test eax, eax
je 0x10100ad3
lock inc dword [eax + 4]
mov eax, dword [ebp + 8]
mov dword [eax + 0x74], edi
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0x4a]
cmp eax, 0x301
jb 0x10100d49
mov eax, dword [esp + 0xc]
cmp dword [eax + 0xf4], 0
je 0x10100d49
mov eax, dword [esp + 0xc]
cmp dword [eax + 0xf0], 0
je 0x10100d49
mov eax, dword [esp + 0xc]
lea edi, [eax + 0xec]
mov eax, dword [ebp + 8]
lea ebx, [eax + 0x5d0]
cmp dword [eax + 0x5d4], 0
je 0x10100b35
push 0
push ebx
call sym.nss3.dll_SECITEM_FreeItem_Util
add esp, 8
push edi
push ebx
push 0
call sym.nss3.dll_SECITEM_CopyItem_Util
add esp, 0xc
test eax, eax
je 0x10100d49
cmp dword [0x101f4f80], 0
je 0x10101576
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101014e1
mov edi, dword [eax + 0x28]
mov eax, 0x50
jmp 0x10100d34
mov eax, dword [ebp + 8]
mov dword [eax + 0x718], 0
lock inc dword [0x101f5a38]
push eax
call fcn.1010e6a0
add esp, 4
push dword [esp + 0xc]
call fcn.1010d500
add esp, 4
lock inc dword [0x101f5a34]
push 0x23
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
test eax, eax
je 0x10100bdd
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x48c]
cmp dword [eax + 8], 2
je 0x10100bdd
push 0x10106920
push 0x23
push dword [esp + 0x18]
push dword [ebp + 8]
call fcn.101064e0
add esp, 0x10
push dword [ebp + 8]
call fcn.100fa310
add esp, 4
test eax, eax
je 0x10100c12
cmp dword [0x101f4f80], 0
je 0x1010153a
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101013bd
mov edi, dword [eax + 0x28]
jmp 0x10100c51
mov ecx, dword [ebp + 8]
call fcn.100fa600
test eax, eax
je 0x10100c88
cmp dword [0x101f4f80], 0
je 0x1010154e
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x1010140b
mov edi, dword [eax + 0x28]
push 0x28
push 2
push dword [ebp + 8]
call fcn.100f4470
add esp, 0xc
push 0
push edi
call sym.nss3.dll_PR_SetError
add esp, 8
cmp dword [0x101f4f80], 0
je 0x1010151c
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101010f1
mov ebx, dword [eax + 0x28]
mov esi, dword [ebp + 8]
jmp 0x100fe71b
push 1
push dword [ebp + 8]
call fcn.100f8b00
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x10100bec
mov edi, dword [esp + 0xc]
mov esi, dword [ebp + 8]
mov dword [esi + 0xc4], edi
push 0x17
push esi
call fcn.10105f30
add esp, 8
mov byte [edi + 0xcf], al
mov dword [esi + 0x4b4], 0
test byte [esi + 0x1d], 4
jne 0x10100ce0
mov eax, dword [ebp + 8]
push dword [eax + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
mov edi, dword [ebp + 8]
mov ecx, edi
call fcn.100fb070
mov ebx, eax
test byte [edi + 0x1d], 4
jne 0x10100d03
mov eax, dword [ebp + 8]
push dword [eax + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
test ebx, ebx
je 0x100fe7fc
cmp dword [0x101f4f80], 0
je 0x10101544
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x101013da
mov edi, dword [eax + 0x28]
mov eax, 0x28
push eax
push 2
push dword [ebp + 8]
call fcn.100f4470
add esp, 0xc
mov bl, 1
jmp 0x101000fa
push dword [esp + 0x10]
call fcn.101071f0
add esp, 4
mov eax, dword [ebp + 8]
test byte [eax + 0x1d], 4
jne 0x10100d6c
push dword [eax + 0x168]
call sym.nss3.dll_PR_EnterMonitor
add esp, 4
push dword [ebp + 8]
call fcn.100fba40
add esp, 4
test eax, eax
jne 0x10100dbc
push 0
push dword [esp + 0x18]
push dword [ebp + 8]
call fcn.100f50f0
add esp, 0xc
test eax, eax
jne 0x10100dbc
mov ecx, dword [ebp + 8]
call fcn.10103c90
test eax, eax
jne 0x10100dbc
xor ebx, ebx
mov edi, dword [ebp + 8]
mov ecx, edi
xor edx, edx
call fcn.10103d30
mov dword [edi + 0x450], 6
test eax, eax
je 0x101010d1
cmp dword [0x101f4f80], 0
je 0x10101562
push dword [0x101f45d4]
call dword [sym.imp.kernel32.dll_TlsGetValue]
test eax, eax
je 0x10101493
mov edi, dword [eax + 0x28]
xor ebx, ebx
jmp 0x101000fa
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x1c]
mov ecx, dword [ecx + 0xc4]
mov dword [esp + 0x10], ecx
test ax, ax
js 0x10100e17
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 0
je 0x10100e2f
cmp dword [ecx + 0x54], 0
jne 0x10100e17
and eax, 0x6000
cmp eax, 0x4000
jne 0x10100e2f
push 0xff01
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
test eax, eax
je 0x1010104d
mov ecx, dword [ebp + 8]
call fcn.100f4e80
test eax, eax
jne 0x10101090
mov dword [esp + 0xc], 0x101f5a28
cmp dword [esp + 0x1c], 0
je 0x10100e7f
mov eax, dword [esp + 0x10]
movzx eax, byte [eax + 0x78]
cmp dword [esp + 0x1c], eax
jne 0x10100e7f
mov eax, dword [esp + 0x10]
add eax, 0x79
push dword [esp + 0x1c]
push dword [esp + 0x128]
push eax
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10101118
mov eax, dword [esp + 0xc]
lock inc dword [eax]
mov eax, dword [ebp + 8]
cmp dword [eax + 0x718], 0
je 0x10100eae
xor ebx, ebx
mov dword [esi + 0x718], ebx
push dword [esi + 0x5dc]
call sym.nss3.dll_PK11_FreeSymKey
add esp, 4
mov dword [esi + 0x5dc], ebx
mov edi, dword [esp + 0x10]
mov byte [edi + 0xce], 0
push dword [ebp + 8]
call fcn.1010e6a0
add esp, 4
push edi
call fcn.1010d500
add esp, 4
push 0x140
call sym.nss3.dll_PORT_ZAlloc_Util
add esp, 4
test eax, eax
je 0x1010107e
mov edi, eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd0]
xor ebx, ebx
mov eax, 0
test ecx, ecx
je 0x10100f01
push ecx
call sym.nss3.dll_PORT_Strdup_Util
add esp, 4
mov dword [edi + 0x24], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc8]
test eax, eax
je 0x10100f1c
push eax
call sym.nss3.dll_PORT_Strdup_Util
add esp, 4
mov ebx, eax
mov dword [edi + 0x28], ebx
mov edx, dword [ebp + 8]
movdqu xmm0, xmmword [edx + 0xb0]
movdqu xmmword [edi + 0x38], xmm0
movzx eax, word [edx + 0xc0]
mov word [edi + 0x48], ax
mov dword [edi + 8], 1
xor eax, eax
mov dword [edi + 4], eax
movzx ecx, word [edx + 0x58]
mov word [edi + 0x4a], cx
mov dword [edi + 0x74], eax
mov word [edi + 0xce], 1
mov byte [edi + 0x9c], 1
mov dword [edx + 0xc4], edi
movzx eax, word [edx + 0x58]
mov word [edi + 0x4a], ax
mov eax, dword [esp + 0x128]
mov byte [edi + 0x78], al
test eax, eax
je 0x10100f91
lea ecx, [edi + 0x79]
push eax
push dword [esp + 0x128]
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push 0x17
push esi
call fcn.10105f30
add esp, 8
mov byte [edi + 0xcf], al
cmp dword [esi + 0x97c], 0
je 0x10100fd7
lea eax, [esi + 0x974]
add edi, 0xf8
xor ebx, ebx
push eax
push edi
push ebx
call sym.nss3.dll_SECITEM_CopyItem_Util
add esp, 0xc
mov dword [esi + 0x97c], ebx
mov ecx, 0xffffd01d
test eax, eax
jne 0x100fe007
mov dword [esi + 0x4b4], 0
mov eax, dword [esi + 0x48c]
xor ecx, ecx
cmp dword [eax + 0xc], 0
sete cl
or ecx, 0xa
mov dword [esi + 0x450], ecx
or byte [esi + 0x54c], 0x10
jmp 0x100fe7fc
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ff675
mov eax, dword [esp + 0xc]
mov dword [esi + 0x7c], eax
xor ebx, ebx
jmp 0x100ff748
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ff529
xor ebx, ebx
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x38], 0
sete bl
or ebx, 0xffffd070
jmp 0x10101090
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ff601
mov eax, dword [ebp + 8]
mov dword [eax + 0xc4], 0
mov ebx, 0xffffd01d
push 0x28
jmp 0x100fdffa
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ff136
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x100ff164
mov eax, dword [ebp + 8]
test byte [eax + 0x1d], 4
jne 0x100fe737
push dword [esi + 0x168]
call sym.nss3.dll_PR_ExitMonitor
add esp, 4
jmp 0x100fe737
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x10100c7d
call fcn.1001b2e0
jmp 0x100fec2b
mov eax, dword [esp + 0x10]
movzx eax, word [eax + 0x4a]
mov ecx, dword [esp + 0x2c]
cmp ax, word [ecx]
jne 0x10101090
mov eax, dword [esp + 0x10]
movzx eax, word [eax + 0x9a]
mov ecx, dword [ebp + 8]
cmp ax, word [ecx + 0x490]
jne 0x10101090
mov eax, dword [esp + 0x10]
cmp byte [eax + 0xcf], 0
je 0x10101383
push 0x17
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
test eax, eax
je 0x101013b3
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x60]
mov dword [esi + 0x80], eax
mov eax, dword [ebx + 0x64]
mov dword [esi + 0x84], eax
mov eax, dword [ebx + 0x68]
mov dword [esi + 0x8c], eax
mov eax, dword [ebx + 0x6c]
mov dword [esi + 0x90], eax
push dword [ebx + 0x70]
call fcn.10114b20
add esp, 4
mov dword [esi + 0x98], eax
mov eax, dword [ebx + 0x74]
mov dword [esi + 0x88], eax
mov dword [esp + 0x74], 0
lea eax, [ebx + 0x9d]
mov dword [esp + 0x78], eax
movzx eax, byte [ebx + 0xcd]
mov dword [esp + 0x7c], eax
mov eax, dword [ebx + 0xd8]
mov dword [esp + 0xc], eax
push dword [ebx + 0xd4]
call fcn.100d06d0
add esp, 4
test eax, eax
je 0x10101441
mov ebx, eax
push dword [esp + 0xc]
push eax
call fcn.100d0850
add esp, 8
mov dword [esp + 0xc], eax
push ebx
call sym.nss3.dll_SECMOD_DestroyModule
add esp, 4
mov eax, dword [esp + 0xc]
test eax, eax
je 0x10101441
mov ebx, eax
xor edx, edx
inc edx
mov ecx, eax
call fcn.100cd440
test eax, eax
je 0x10101432
mov edx, dword [esp + 0x10]
movzx eax, word [edx + 0xde]
movzx ecx, word [edx + 0xdc]
push dword [esi + 0x11c]
push eax
push dword [edx + 0xd0]
push ecx
push ebx
call fcn.100c6d20
add esp, 0x14
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xc]
lock dec dword [eax + 0x48]
jne 0x10101269
push ebx
call fcn.100cb320
add esp, 4
cmp dword [esp + 0x14], 0
je 0x10101441
mov eax, dword [esp + 0x2c]
movzx eax, word [eax]
xor ecx, ecx
cmp eax, 0x301
mov eax, 0x2800
cmovb eax, ecx
push eax
push 0x30
push 0x10c
push 0x371
push edi
push 0
mov eax, dword [esp + 0x28]
push dword [eax + 0xd0]
mov edi, dword [esp + 0x30]
push edi
call fcn.100ca5c0
add esp, 0x20
mov ebx, eax
push edi
call sym.nss3.dll_PK11_FreeSymKey
add esp, 4
test ebx, ebx
je 0x10101441
lock inc dword [0x101f5a24]
mov eax, dword [ebp + 8]
cmp dword [eax + 0x958], 0
je 0x101012de
lock inc dword [0x101f5a40]
push 0x23
push esi
call fcn.10105f30
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
lea eax, [ecx*8 + 6]
mov dword [esi + 0x450], eax
mov dword [esi + 0x4b4], 1
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x18]
test edi, edi
je 0x10101329
push edi
call fcn.1009bef0
add esp, 4
test eax, eax
je 0x10101323
lock inc dword [eax + 4]
mov eax, dword [ebp + 8]
mov dword [eax + 0x78], edi
push 0
push ebx
push dword [ebp + 8]
call fcn.100f50f0
add esp, 0xc
mov ebx, 0xffffd01d
test eax, eax
jne 0x10101090
jmp 0x10100ff9
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x101006e9
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x101000d7
push 0x17
push dword [ebp + 8]
call fcn.10105f30
add esp, 8
mov ebx, 0xffffd089
test eax, eax
jne 0x10101090
mov eax, dword [esp + 0x10]
cmp byte [eax + 0xcf], 0
jne 0x10101159
jmp 0x1010116e
mov ebx, 0xffffd088
jmp 0x10101090
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x10100c0d
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x10100d2c
call fcn.1001b2e0
jmp 0x100ff33d
call fcn.1001b2e0
jmp 0x100fe95b
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x10100c3f
call fcn.1001b2e0
jmp 0x100fe27b
lock dec dword [ebx + 0x48]
jne 0x10101441
push ebx
call fcn.100cb320
add esp, 4
mov dword [esp + 0xc], 0x101f5a2c
jmp 0x10100e7f
call fcn.1001b2e0
jmp 0x100fe14a
call fcn.1001b2e0
jmp 0x100fe300
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x10100869
call fcn.1001b2e0
jmp 0x100ff7b5
call fcn.1001b2e0
jmp 0x100feb80
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x10100ddd
call fcn.1001b2e0
jmp 0x100ff661
call fcn.1001b2e0
jmp 0x100ff515
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x101006a2
sub esp, 0x10
movdqa xmm0, xmmword [0x101b11e0]
movdqu xmmword [esp], xmm0
call fcn.1006e720
add esp, 0x10
jmp 0x10100b6a
call fcn.1001b2e0
jmp 0x100ff5ed
call fcn.1001b2e0
jmp 0x100ff122
call fcn.1001b2e0
jmp 0x100ff150
call fcn.1001b2e0
jmp 0x10100c69
call fcn.1001b2e0
jmp 0x101006d5
call fcn.1001b2e0
jmp 0x101000c3
call fcn.1001b2e0
jmp 0x10100bf9
call fcn.1001b2e0
jmp 0x10100d18
call fcn.1001b2e0
jmp 0x10100c2b
call fcn.1001b2e0
jmp 0x10100855
call fcn.1001b2e0
jmp 0x10100dc9
call fcn.1001b2e0
jmp 0x1010068e
call fcn.1001b2e0
jmp 0x10100b56