Function at 0xddc365
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using rc4 ksa
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2bc
mov dword [ebp - 0x14], edx
xor edx, edx
push 0x1f
mov dword [ebp - 0xbc], ecx
mov eax, edx
pop ecx
mov dword [ebp - 0x24], 0x5b
mov dword [ebp - 0x20], 5
mov dword [ebp - 0x1c], 0xffffff81
add ecx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, 3
jl 0xddc393
mov eax, dword [0xe1a29c]
push esi
push edi
mov dword [ebp - 0x34], 0x4c
lea edi, [ebp - 0x34]
mov dword [ebp - 0x30], 0x5d
mov esi, 0xdd16c8
mov dword [ebp - 0x2c], 0x33
or eax, 0xbb4f1c33
mov dword [ebp - 0x28], 0xffffffe1
movups xmm1, xmmword [ebp - 0x34]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0xc], eax
movaps xmm0, xmm1
mov dword [ebp - 0x10], ecx
psrldq xmm0, 8
paddd xmm1, xmm0
movsd dword es:[edi], dword [esi]
movups xmm0, xmm1
mov dword [ebp - 0x98], 0xdb0f6eb7
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x94], 0xefd21863
movsd dword es:[edi], dword [esi]
movd eax, xmm1
push 0x66
mov dword [ebp - 0x90], 0xa6132484
add eax, 0x47
movsw word es:[edi], word [esi]
mov dword [ebp - 8], eax
pop eax
push 0x10
pop ecx
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x85], al
mov edi, edx
mov byte [ebp - 0x5c], al
mov eax, edx
mov dword [ebp - 0x8c], 0x8484d147
mov word [ebp - 0x88], 0x8d29
mov byte [ebp - 0x86], 0x9e
mov dword [ebp - 0x84], 0x491df70b
mov dword [ebp - 0x80], 0x51342ec0
mov dword [ebp - 0x7c], 0xfce0af14
mov dword [ebp - 0x78], 0x12cb3989
mov byte [ebp - 0x74], 0xf0
mov byte [ebp - 0x73], cl
mov dword [ebp - 0x72], 0xd9d5a56d
mov dword [ebp - 0x6e], 0x40014ec9
mov dword [ebp - 0x6a], 0x1d1b00ac
mov dword [ebp - 0x66], 0x89aa07dd
mov word [ebp - 0x62], 0x1c6f
mov byte [ebp - 0x60], cl
mov word [ebp - 0x5f], 0xdc98
mov byte [ebp - 0x5d], 0x53
mov word [ebp - 0x5b], 0x1293
mov byte [ebp - 0x59], 0x82
mov byte [ebp + eax - 0x2bc], al
inc eax
cmp eax, 0x100
jb 0xddc4a9
mov esi, edx
mov dword [ebp - 0x4c], 0xe
xor edx, edx
mov cl, byte [ebp + esi - 0x2bc]
mov eax, esi
mov byte [ebp - 1], cl
div dword [ebp - 0x4c]
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x34]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x2bc]
mov byte [ebp + esi - 0x2bc], al
inc esi
mov al, byte [ebp - 1]
mov byte [ebp + edi - 0x2bc], al
cmp esi, 0x100
jb 0xddc4c1
xor eax, eax
mov dword [ebp - 0x18], eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [ebp - 0x18]
push 0x66
mov cl, byte [ebp + edi - 0x2bc]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 0x18], eax
mov al, byte [ebp + eax - 0x2bc]
mov byte [ebp + edi - 0x2bc], al
mov eax, dword [ebp - 0x18]
mov byte [ebp + eax - 0x2bc], cl
mov ecx, 0xdd17f0
movzx eax, byte [ebp + edi - 0x2bc]
add eax, edx
movzx eax, al
pop edx
mov al, byte [ebp + eax - 0x2bc]
mov byte [ebp - 1], al
lea eax, [edx - 0x30]
push 9
pop edx
cmp ax, dx
ja 0xddc57a
add ecx, 2
movzx eax, word [ecx]
mov edx, eax
test ax, ax
jne 0xddc55d
mov edx, dword [ebp - 0xc]
jmp 0xddc581
imul edx, dword [ebp - 0xc], 0x8fec58b3
mov al, byte [ebp + esi - 0x98]
xor edx, 0x329e11c0
xor al, byte [ebp - 1]
mov byte [ebp + esi - 0x1bc], al
inc esi
mov dword [ebp - 0xc], edx
cmp esi, 0x40
jb 0xddc50b
xor eax, eax
mov dword [ebp - 0x58], 0x10
push 0x4d
mov byte [ebp - 0x17c], al
pop ecx
mov dword [ebp - 0x54], 0xffffffa3
add ecx, dword [ebp + eax*4 - 0x58]
inc eax
cmp eax, 2
jl 0xddc5be
xor eax, eax
mov dword [ebp - 0x18], ecx
mov edi, eax
mov dword [ebp - 0x24], 0x46
mov dword [ebp - 0x20], 0x12
mov dword [ebp - 0x1c], 0xffffffa8
sub edi, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, 3
jl 0xddc5e4
push 0x66
mov dword [ebp - 0x4c], edi
mov eax, 0x130
pop ecx
mov esi, 0xdd17f0
add eax, ecx
lea esi, [esi + 2]
cmp eax, 0x1a8a
ja 0xddc619
movzx ecx, word [esi]
test ecx, ecx
jne 0xddc5fe
or edx, 0x9c50eb1b
jmp 0xddc632
add edx, 0x417f282b
push ecx
mov dword [0xe1a29c], edx
call fcn.00ddc346
pop ecx
imul edx, edx, 0x33f1ec7c
imul eax, edx, 0xe609deaa
mov dword [ebp - 0x24], 0x4a
mov dword [ebp - 0x20], 0xb
mov dword [ebp - 0x1c], 0xffffffab
mov dword [0xe1a29c], eax
xor eax, eax
mov ecx, eax
sub ecx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, 3
jl 0xddc656
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 8]
call fcn.00dee8ce
lea edx, [ebp - 0x1bc]
mov dword [ebp - 0xc], eax
mov ecx, eax
call fcn.00e0597f
cmp edi, dword [ebp + 8]
mov edi, dword [0xe1a29c]
jae 0xddcba8
push 0xe
pop eax
mov dword [ebp - 0xe8], 0xa
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], 0xc
push 0x27
pop esi
xor eax, eax
sub esi, dword [ebp + eax*4 - 0xe8]
inc eax
cmp eax, 3
jl 0xddc6ac
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
movzx ecx, dl
mov edx, dword [ebp - 0xbc]
mov al, byte [eax + edx]
mov edx, dword [ebp - 0x10]
inc dl
mov byte [ebp + ecx - 8], al
movzx eax, dl
mov dword [ebp - 0x10], edx
cmp eax, esi
jne 0xddcb93
push 7
xor ecx, ecx
mov dword [ebp - 0x20], 0x1e
pop esi
mov dword [ebp - 0x1c], 0xffffffdb
mov eax, ecx
add esi, dword [ebp + eax*4 - 0x20]
inc eax
cmp eax, 2
jl 0xddc6f7
push 0xe
pop eax
mov edx, eax
mov dword [ebp - 0xf4], 0x5a
mov dword [ebp - 0x10], edx
mov eax, 0xdd1760
mov dword [ebp - 0xf0], 0x14
mov dword [ebp - 0xec], 0xffffff9e
inc ecx
lea eax, [eax + 2]
cmp ecx, 0x170b
jg 0xddc744
xor edx, edx
cmp word [eax], dx
mov edx, dword [ebp - 0x10]
jne 0xddc72c
jmp 0xddc74a
imul edi, edi, 0xef13eb51
imul edi, edi, 0x7cb2c212
and edi, 0xfdbdff01
xor eax, eax
sub edx, dword [ebp + eax*4 - 0xf4]
inc eax
cmp eax, 3
jl 0xddc758
mov dword [ebp - 0x158], 7
xorps xmm2, xmm2
mov dword [ebp - 0x154], 0x58
mov dword [ebp - 0x150], 0x2b
mov dword [ebp - 0x14c], 0xffffff19
movups xmm1, xmmword [ebp - 0x158]
mov dword [ebp - 0x10], edx
push 0xc
movaps xmm0, xmm1
mov dword [ebp - 0x100], 0x4d
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0xfc], 0x2e
movups xmm0, xmm1
mov dword [ebp - 0xf8], 0xffffff7c
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
pop ecx
add eax, 0x5d
xor edx, edx
mov dword [ebp - 0xc4], eax
mov eax, edx
add ecx, dword [ebp + eax*4 - 0x100]
inc eax
cmp eax, 3
jl 0xddc7e4
push 0xb
mov dword [ebp - 0xc8], ecx
mov eax, edx
pop ecx
mov dword [ebp - 0x10c], 0x4a
mov dword [ebp - 0x108], 0x3c
mov dword [ebp - 0x104], 0xffffff73
add ecx, dword [ebp + eax*4 - 0x10c]
inc eax
cmp eax, 3
jl 0xddc81a
push 0xa
mov dword [ebp - 0xcc], ecx
xor eax, eax
pop edx
mov dword [ebp - 0x118], 0x3f
mov dword [ebp - 0x114], 4
mov dword [ebp - 0x110], 0xffffffc6
sub edx, dword [ebp + eax*4 - 0x118]
inc eax
cmp eax, 3
jl 0xddc850
push 0x2c
pop ecx
mov dword [ebp - 0x124], 0x22
xor eax, eax
mov dword [ebp - 0x120], 0x49
mov dword [ebp - 0x11c], 0xffffffbd
sub ecx, dword [ebp + eax*4 - 0x124]
inc eax
cmp eax, 3
jl 0xddc880
mov dword [ebp - 0x168], 0x33
movaps xmm1, xmm2
mov dword [ebp - 0x164], 7
mov dword [ebp - 0x160], 0x4d
mov dword [ebp - 0x15c], 0xffffff83
movups xmm0, xmmword [ebp - 0x168]
push 0x18
mov dword [ebp - 0xc0], ecx
psubd xmm1, xmm0
mov dword [ebp - 0x130], 0x59
movaps xmm0, xmm1
mov dword [ebp - 0x12c], 0x35
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x128], 0xffffff69
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
pop ecx
add eax, 0xb
mov dword [ebp - 0xd8], eax
xor eax, eax
add ecx, dword [ebp + eax*4 - 0x130]
inc eax
cmp eax, 3
jl 0xddc911
push 0x55
mov dword [ebp - 0xdc], ecx
sub edi, 0x1522fccb
pop ecx
mov dword [ebp - 0x13c], 0x24
xor eax, eax
mov dword [ebp - 0x138], 0x15
mov dword [ebp - 0x134], 0xffffff74
add ecx, dword [ebp + eax*4 - 0x13c]
inc eax
cmp eax, 3
jl 0xddc94d
push 0x1e
mov dword [ebp - 0xa4], ecx
xor eax, eax
pop ecx
mov dword [ebp - 0x148], 0x1f
mov dword [ebp - 0x144], 0x45
mov dword [ebp - 0x140], 0xffffffb8
sub ecx, dword [ebp + eax*4 - 0x148]
inc eax
cmp eax, 3
jl 0xddc983
mov dword [ebp - 0xd0], ecx
and edi, 0xf635952b
push 0x3c
pop ecx
mov dword [ebp - 0x178], ecx
mov dword [ebp - 0x174], 0x3d
mov dword [ebp - 0x170], 0x4e
mov dword [ebp - 0x16c], 0xfffffee0
movups xmm1, xmmword [ebp - 0x178]
mov dword [ebp - 0x44], 0x26
mov dword [ebp - 0x40], 0x60
paddd xmm1, xmm2
mov dword [ebp - 0x3c], 7
movaps xmm0, xmm1
mov dword [ebp - 0x38], 0xffffff39
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0xb8], 0x57
movups xmm0, xmm1
mov dword [ebp - 0xb4], 0x2f
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0xb0], 0x1c
movd eax, xmm1
movups xmm1, xmmword [ebp - 0x44]
mov dword [ebp - 0xac], 0x36
add eax, 0x5f
mov dword [ebp - 0xa8], 0x1dd
paddd xmm1, xmm2
mov dword [ebp - 0xd4], eax
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
add eax, ecx
mov ecx, 0x2f4
mov dword [ebp - 0xa0], eax
xor eax, eax
sub ecx, dword [ebp + eax*4 - 0xb8]
inc eax
cmp eax, 5
jl 0xddca74
push 0x16
mov dword [ebp - 0x9c], ecx
xor eax, eax
pop ecx
mov dword [ebp - 0x30], 0x3d
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x28], 0xffffffa6
add ecx, dword [ebp + eax*4 - 0x30]
inc eax
cmp eax, 3
jl 0xddcaa1
movzx eax, byte [ebp + esi - 8]
mov esi, dword [ebp - 0x18]
movzx edx, byte [ebp + edx - 8]
mov dword [ebp - 0x50], ecx
mov cl, byte [ebp - 0x10]
shr eax, cl
mov ecx, dword [ebp - 0xc]
push 0x69
mov al, byte [eax + ecx]
mov ecx, dword [ebp - 0x14]
mov byte [esi + ecx], al
mov eax, dword [ebp - 0xc4]
mov cl, byte [ebp - 0xc0]
shr edx, cl
add edx, dword [ebp - 0xc]
movzx eax, byte [ebp + eax - 8]
and eax, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xcc]
shl eax, cl
mov ecx, dword [ebp - 0x14]
mov al, byte [eax + edx]
mov byte [esi + ecx + 1], al
mov eax, dword [ebp - 0xd0]
mov cl, byte [ebp - 0xd4]
movzx edx, byte [ebp + eax - 8]
mov eax, dword [ebp - 0xd8]
shr edx, cl
mov ecx, dword [ebp - 0xa4]
movzx eax, byte [ebp + eax - 8]
and eax, dword [ebp - 0xdc]
shl eax, cl
add edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x14]
mov al, byte [eax + edx]
mov byte [esi + ecx + 2], al
mov ecx, 0xdd1790
pop edx
lea eax, [edx - 0x30]
push 9
pop edx
cmp ax, dx
ja 0xddcb55
add ecx, 2
movzx eax, word [ecx]
mov edx, eax
test ax, ax
jne 0xddcb3b
jmp 0xddcb5b
and edi, 0x7b83a1d2
mov eax, dword [ebp - 0xa0]
sub edi, 0x22efb1d3
mov ecx, dword [ebp - 0xc]
mov dword [0xe1a29c], edi
movzx eax, byte [ebp + eax - 8]
and eax, dword [ebp - 0x9c]
mov al, byte [eax + ecx]
mov ecx, dword [ebp - 0x14]
mov byte [esi + ecx + 3], al
add esi, 4
mov al, byte [ebp - 0x50]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x10], eax
jmp 0xddcb96
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x4c]
inc ecx
mov dword [ebp - 0x4c], ecx
cmp ecx, dword [ebp + 8]
jb 0xddc6a7
jmp 0xddcbab
mov eax, dword [ebp - 0x10]
movzx eax, al
mov dword [ebp - 0x50], eax
cmp eax, dword [ebp - 0x54]
jle 0xddcf38
mov dword [ebp - 0x44], 0x4b
xorps xmm1, xmm1
mov dword [ebp - 0x40], 0x52
xorps xmm2, xmm2
mov dword [ebp - 0x3c], 0x5b
xor eax, eax
mov dword [ebp - 0x38], 0xffffff08
movups xmm0, xmmword [ebp - 0x44]
push 0x10
mov dword [ebp - 0xb8], 0x1a
psubd xmm1, xmm0
mov dword [ebp - 0xb4], 8
movaps xmm0, xmm1
mov dword [ebp - 0xb0], 0x42
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0xac], 2
movups xmm0, xmm1
mov dword [ebp - 0xa8], 0xffffffa8
psrldq xmm0, 4
paddd xmm1, xmm0
movd esi, xmm1
pop ecx
sub ecx, dword [ebp + eax*4 - 0xb8]
inc eax
cmp eax, 5
jl 0xddcc37
movzx eax, byte [ebp + esi - 8]
movaps xmm1, xmm2
mov esi, dword [ebp - 0x18]
mov dword [ebp - 0x44], 0x1b
mov dword [ebp - 0x40], 0x2c
mov dword [ebp - 0x3c], 0x40
mov dword [ebp - 0x38], 0xffffff3e
movups xmm0, xmmword [ebp - 0x44]
shr eax, cl
mov ecx, dword [ebp - 0xc]
paddd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
mov al, byte [eax + ecx]
paddd xmm1, xmm0
mov ecx, dword [ebp - 0x14]
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd edx, xmm1
mov byte [esi + ecx], al
xor eax, eax
add edx, 0x3c
inc esi
mov dword [ebp + 8], esi
cmp dword [ebp - 0x50], edx
jne 0xddcd59
mov dword [ebp - 0x44], 5
mov dword [ebp - 0x40], 0x57
mov dword [ebp - 0x3c], 0x37
mov dword [ebp - 0x38], 0xffffff6d
movups xmm0, xmmword [ebp - 0x44]
push 0x49
mov dword [ebp - 0x30], 0x46
psubd xmm2, xmm0
mov dword [ebp - 0x2c], 0x45
movaps xmm0, xmm2
mov dword [ebp - 0x28], 0xffffff2f
psrldq xmm0, 8
paddd xmm2, xmm0
movups xmm0, xmm2
psrldq xmm0, 4
paddd xmm2, xmm0
movd edx, xmm2
pop ecx
add ecx, dword [ebp + eax*4 - 0x30]
inc eax
cmp eax, 3
jl 0xddcd07
imul eax, edi, 0x87723fac
push 0x50
mov dword [ebp + 8], ecx
pop ecx
mov dword [ebp - 0x20], 0xa
mov dword [0xe1a29c], eax
xor eax, eax
mov dword [ebp - 0x1c], 0xffffffaa
add ecx, dword [ebp + eax*4 - 0x20]
inc eax
cmp eax, 2
jl 0xddcd32
movzx eax, byte [ebp + edx - 8]
and eax, dword [ebp + 8]
mov edx, dword [ebp - 0x14]
shl eax, cl
mov ecx, dword [ebp - 0xc]
mov al, byte [eax + ecx]
mov cl, 0x5f
mov byte [esi + edx], al
jmp 0xddcf26
mov edx, eax
mov dword [ebp - 0xb8], 0x4a
mov dword [ebp - 0xb4], 0x5c
mov dword [ebp - 0xb0], 0x60
mov dword [ebp - 0xac], 0x39
mov dword [ebp - 0xa8], 0xfffffec1
sub edx, dword [ebp + eax*4 - 0xb8]
inc eax
cmp eax, 5
jl 0xddcd8d
push 0x5e
mov dword [ebp - 0x54], edx
xor eax, eax
pop ecx
mov dword [ebp - 0x30], 0x47
mov dword [ebp - 0x2c], 0x62
mov dword [ebp - 0x28], 0xfffffefc
add ecx, dword [ebp + eax*4 - 0x30]
inc eax
cmp eax, 3
jl 0xddcdb7
push 0x28
mov dword [ebp - 0x50], ecx
xor eax, eax
pop ecx
mov dword [ebp - 0x48], 0xb
mov dword [ebp - 0x44], 0x49
mov dword [ebp - 0x40], 0x3b
mov dword [ebp - 0x3c], 0x52
mov dword [ebp - 0x38], 0xffffff43
sub ecx, dword [ebp + eax*4 - 0x48]
inc eax
cmp eax, 5
jl 0xddcdec
push 0x14
mov dword [ebp - 0x20], 2
xor eax, eax
mov dword [ebp - 0x1c], 0xffffffeb
pop esi
add esi, dword [ebp + eax*4 - 0x20]
inc eax
cmp eax, 2
jl 0xddce09
push 0x57
mov dword [ebp - 0x9c], esi
xor eax, eax
mov dword [ebp - 0x20], 0x23
mov dword [ebp - 0x1c], 0xffffff8a
pop edx
add edx, dword [ebp + eax*4 - 0x20]
inc eax
cmp eax, 2
jl 0xddce2c
push 0xc
mov dword [ebp - 0xa0], edx
xor eax, eax
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x30], 0x47
mov dword [ebp - 0x2c], 0x49
mov dword [ebp - 0x28], 0xffffff7b
pop esi
sub esi, dword [ebp + eax*4 - 0x30]
inc eax
cmp eax, 3
jl 0xddce59
mov dword [ebp - 0x44], 0x4b
xor edi, 0xdf691523
mov dword [ebp - 0x40], 0x31
mov dword [ebp - 0x3c], 0x39
mov dword [ebp - 0x38], 0xffffff02
movups xmm1, xmmword [ebp - 0x44]
push 0x2b
mov dword [ebp - 0x54], esi
mov esi, dword [ebp + 8]
paddd xmm1, xmm2
movaps xmm0, xmm1
mov dword [0xe1a29c], edi
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x30], 0x4f
movups xmm0, xmm1
mov dword [ebp - 0x2c], 7
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x28], 0xffffff81
movd eax, xmm1
pop edi
add eax, 0x58
mov dword [ebp - 0xa4], eax
xor eax, eax
add edi, dword [ebp + eax*4 - 0x30]
inc eax
cmp eax, 3
jl 0xddced8
movzx edx, byte [ebp + edx - 8]
and edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x9c]
shl edx, cl
mov cl, byte [ebp - 0xa0]
mov dword [ebp + 8], edi
movzx eax, byte [ebp + eax - 8]
mov edi, dword [ebp - 0xc]
add edx, edi
shr eax, cl
mov ecx, dword [ebp + 8]
mov al, byte [eax + edx]
mov edx, dword [ebp - 0x14]
mov byte [esi + edx], al
mov eax, dword [ebp - 0x54]
movzx eax, byte [ebp + eax - 8]
and eax, dword [ebp - 0xa4]
shl eax, cl
mov cl, byte [eax + edi]
xor eax, eax
inc eax
add eax, esi
mov byte [edx + eax], cl
lea esi, [eax + 2]
mov byte [eax + edx + 1], 0x5f
jmp 0xddcf3e
mov esi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
xor eax, eax
mov byte [esi + edx], al
call fcn.00dee98d
pop edi
mov eax, esi
pop esi
leave
ret