Function at 0xcd55a0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xe0
mov ebx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x28]
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], ebx
test eax, eax
mov edi, 6
cmovns edi, eax
mov eax, ebx
mov dword [esp + 0x44], edx
or eax, edx
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [esp + 0x18], edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
je 0xcd5602
mov ax, 8
jmp 0xcd561d
cmp dword [ebp + 0x14], 0
je 0xcd561b
mov eax, edi
xor eax, 0xfffffbff
mov ecx, edi
or ecx, 0x400
test ecx, eax
je 0xcd55fc
xor eax, eax
mov ecx, edi
or ecx, 0x10000
mov edx, edi
xor edx, 0xfffeffff
movzx esi, ax
test ecx, edx
lea eax, [esi + 0x800]
cmove esi, eax
mov dword [esp + 0x7c], esi
mov eax, edi
and eax, 0xf
mov dword [esp + 0x2c], eax
sete ch
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
mov dword [esp + 0x10], eax
test eax, eax
je 0xcd5701
cmp dword [edx + 0x14], 2
jne 0xcd5701
cmp dword [ebp + 0x14], 0
sete al
cmp dword [ebp + 0x10], 0
setne cl
cmp dword [ebp + 0xc], 0
je 0xcd5701
or cl, al
je 0xcd5701
cmp word [ebp + 0x1c], 0
setne al
cmp dword [ebp + 0x18], 0
sete cl
test cl, al
jne 0xcd5701
cmp dword [esp + 0x2c], 0xb
jae 0xcd5701
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 0x34]
mov eax, dword [edx + 0x10]
mov dword [esp + 0xc], esi
test esi, esi
je 0xcd56bd
cmp eax, 0xffffffff
jne 0xcd56e6
mov dword [edx + 0x1c], 2
jmp 0xcd5708
cmp dword [esp + 0x44], 0
jne 0xcd56d3
mov dword [esp + 0xc], 0
cmp eax, 0xffff
jne 0xcd56e6
mov eax, dword [esp + 0x10]
mov dword [eax + 0x34], 1
mov dword [esp + 0xc], 1
mov eax, edi
shr eax, 0xa
and eax, 1
or ch, al
test edi, 0x400
jne 0xcd5712
or ebx, dword [esp + 0x44]
mov esi, dword [ebp + 0xc]
je 0xcd5727
mov dword [edx + 0x1c], 0x18
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, dword [ebp + 0xc]
cmp byte [esi], 0x2f
je 0xcd572c
mov byte [esp + 0x24], ch
mov eax, dword [ebp + 0x2c]
mov dword [esp + 0x78], eax
jmp 0xcd5782
cmp byte [esi], 0x2f
jne 0xcd5735
mov dword [edx + 0x1c], 0x19
jmp 0xcd5708
mov ebx, dword [ebp + 0x14]
push ebx
push dword [ebp + 0x10]
push 0
mov bl, ch
call fcn.00cd3390
add esp, 0xc
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], 0
cmp eax, 4
setb al
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x44], 0
mov edx, 0
cmovb ecx, edx
mov dword [esp + 0x2c], ecx
or bl, al
mov byte [esp + 0x24], bl
mov ebx, dword [ebp + 0x14]
push esi
call fcn.00cd8f00
add esp, 4
cmp eax, 0x10000
jb 0xcd57a1
mov eax, dword [ebp + 8]
mov dword [eax + 0x1c], 0x19
jmp 0xcd5708
mov ecx, eax
movzx eax, word [ebp + 0x1c]
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x28], ecx
mov ecx, eax
call fcn.00cd6170
mov ecx, dword [esp + 0x10]
mov esi, dword [ecx + 4]
xor edx, edx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x40], esi
add ecx, esi
setb dl
add ecx, 0x4a
adc edx, 0
mov dword [esp + 0x20], eax
mov eax, ecx
mov esi, dword [esp + 0x74]
and eax, esi
add eax, eax
xor ecx, esi
add ecx, eax
adc edx, 0
mov eax, 0xfffffffe
cmp eax, ecx
mov eax, 0
sbb eax, edx
jae 0xcd5809
mov eax, dword [ebp + 8]
mov dword [eax + 0x1c], 0xf
jmp 0xcd5708
cmp dword [esp + 0xc], 0
jne 0xcd5872
mov ecx, dword [esp + 0x28]
mov eax, ecx
shr eax, 0x1f
mov esi, eax
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0x74]
add edx, dword [ebp + 0x38]
mov eax, 0
adc eax, 0xffffffff
add edx, dword [ebp + 0x40]
adc eax, 0
add ecx, ecx
add edx, ecx
adc eax, esi
add edx, dword [esp + 0x20]
adc eax, 0
add edx, dword [esp + 0x40]
adc eax, 0
mov ecx, dword [ebp + 8]
add edx, dword [ecx]
adc eax, dword [ecx + 4]
add edx, 0x72
adc eax, 0
cmp eax, 0xffffffff
je 0xcd5872
mov eax, dword [esp + 0x10]
mov dword [eax + 0x34], 1
mov dword [esp + 0xc], 1
xor edx, edx
mov eax, dword [esp + 0x28]
test eax, eax
mov ecx, dword [ebp + 0xc]
je 0xcd58a6
cmp byte [eax + ecx - 1], 0x2f
mov ecx, dword [ebp + 8]
jne 0xcd58a9
cmp dword [ebp + 0x14], 0
jne 0xcd589a
mov edx, 0x10
or ebx, dword [esp + 0x44]
je 0xcd58a9
mov dword [ecx + 0x1c], 0x18
jmp 0xcd5708
mov ecx, dword [ebp + 8]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0xc]
test edx, edx
mov eax, 0x1c
cmove eax, edx
mov edx, dword [esp + 0x74]
mov esi, dword [esp + 0x28]
add edx, esi
mov esi, dword [esp + 0x40]
add esi, edx
add eax, esi
add eax, 0x2e
mov ebx, dword [esp + 0x10]
mov edx, dword [ebx + 8]
cmp edx, eax
jae 0xcd592c
test edx, edx
mov esi, 1
cmovne esi, edx
cmp esi, eax
jae 0xcd5905
mov ecx, esi
and ecx, 2
mov edx, esi
or esi, 2
imul esi, ecx
xor ecx, 2
and edx, 0xfffffffd
imul edx, ecx
add esi, edx
cmp esi, eax
jb 0xcd58e9
push esi
push dword [ebx + 0xc]
push dword [ebx]
mov ebx, dword [ebp + 8]
push dword [ebx + 0x34]
call dword [ebx + 0x30]
add esp, 0x10
test eax, eax
je 0xcd5a7b
mov edx, dword [esp + 0x10]
mov dword [edx], eax
mov dword [edx + 8], esi
mov ecx, ebx
mov ebx, edx
mov eax, dword [ebx + 0x14]
mov edx, dword [ebx + 0x18]
inc eax
cmp edx, eax
jae 0xcd5988
test edx, edx
mov esi, 1
cmovne esi, edx
cmp esi, eax
jae 0xcd5961
mov ecx, esi
and ecx, 2
mov edx, esi
or esi, 2
imul esi, ecx
xor ecx, 2
and edx, 0xfffffffd
imul edx, ecx
add esi, edx
cmp esi, eax
jb 0xcd5945
push esi
push dword [ebx + 0x1c]
push dword [ebx + 0x10]
mov ebx, dword [ebp + 8]
push dword [ebx + 0x34]
call dword [ebx + 0x30]
add esp, 0x10
test eax, eax
je 0xcd5a7b
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x18], esi
mov ecx, ebx
cmp dword [ebp + 0x14], 0
sete dl
xor eax, eax
or dl, byte [esp + 0x24]
jne 0xcd59b5
push 0x4df40
push 1
push dword [ecx + 0x34]
mov eax, dword [ebp + 8]
call dword [eax + 0x28]
mov ecx, dword [ebp + 8]
add esp, 0xc
test eax, eax
je 0xcd5b9d
mov dword [esp + 0xc], eax
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
push esi
mov ebx, dword [esp + 0x18]
push ebx
call fcn.00cd61a0
add esp, 8
test eax, eax
je 0xcd5a87
test edi, 0x400
sete dl
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x30]
add edi, esi
adc eax, 0
mov dword [esp + 0x30], edi
mov dword [esp + 0x54], eax
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x18]
add ecx, esi
adc ebx, 0
xorps xmm0, xmm0
movaps xmmword [esp + 0x80], xmm0
movups xmmword [esp + 0x8e], xmm0
and dl, byte [esp + 0x24]
mov byte [esp + 0x20], dl
xor dl, 1
movzx edx, dl
shl edx, 3
mov dword [esp + 0x40], edx
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x34], 0
je 0xcd5a9c
mov edx, edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], ebx
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x10], 0
mov eax, 0xfffffffe
cmp eax, esi
mov edi, 0
sbb edi, ebx
mov ecx, dword [esp + 0x54]
jb 0xcd5ba9
xor edi, edi
cmp eax, edx
sbb edi, ecx
jb 0xcd5ba9
xor eax, eax
mov edi, edx
jmp 0xcd5bf4
mov dword [ebx + 0x1c], 0x10
jmp 0xcd5708
push dword [esp + 0xc]
mov eax, dword [ebp + 8]
push dword [eax + 0x34]
call dword [eax + 0x2c]
add esp, 8
jmp 0xcd5708
cmp dword [esp + 0x4c], 0
jne 0xcd5f91
test ebx, ebx
jne 0xcd5f91
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x80], 0x4034b50
xor eax, eax
cmp byte [esp + 0x20], 0
mov edx, 0x14
cmovne edx, eax
mov byte [esp + 0x84], dl
mov byte [esp + 0x85], 0
mov ebx, dword [esp + 0x7c]
movzx edx, bx
mov byte [esp + 0x86], bl
mov byte [esp + 0x87], dh
mov edx, dword [esp + 0x40]
mov byte [esp + 0x88], dl
movups xmmword [esp + 0x89], xmm0
mov byte [esp + 0x99], 0
mov ebx, dword [esp + 0x28]
mov byte [esp + 0x9a], bl
mov byte [esp + 0x9b], bh
mov edx, dword [ebp + 0x38]
mov byte [esp + 0x9c], dl
mov byte [esp + 0x9d], dh
lea edx, [esp + 0x80]
push 0x1e
push edx
push dword [esp + 0x5c]
push edi
mov esi, dword [ebp + 8]
push dword [esi + 0x44]
call dword [esi + 0x3c]
add esp, 0x14
cmp eax, 0x1e
jne 0xcd5da1
mov edi, dword [esp + 0x18]
add edi, 0x1e
mov eax, esi
mov esi, dword [esp + 0x14]
adc esi, 0
push ebx
push dword [ebp + 0xc]
push esi
push edi
push dword [eax + 0x44]
call dword [eax + 0x3c]
add esp, 0x14
cmp eax, ebx
jne 0xcd5d91
add edi, ebx
adc esi, 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x20], 0
mov eax, dword [ebp + 8]
mov ebx, edi
jmp 0xcd5d1c
mov dword [ecx + 0x1c], 0x10
jmp 0xcd5708
xor edi, edi
cmp eax, edx
mov edx, 0xfffffffe
mov eax, 0
sbb eax, ecx
lea eax, [esp + 0x30]
cmovae eax, edi
cmp edx, esi
mov ecx, 0
sbb ecx, ebx
lea esi, [esp + 0x48]
cmovae esi, edi
lea edx, [esp + 0x38]
cmovae edx, edi
lea ecx, [esp + 0xc0]
mov dword [esp + 0x10], ecx
push eax
push esi
call fcn.00cd6240
add esp, 8
mov edi, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x80], 0x4034b50
xor esi, esi
cmp byte [esp + 0x20], 0
mov edx, 0x14
cmovne edx, esi
mov byte [esp + 0x84], dl
mov byte [esp + 0x85], 0
movzx edx, word [esp + 0x7c]
mov byte [esp + 0x86], dl
mov byte [esp + 0x87], dh
mov edx, dword [ebp + 0x38]
mov dword [esp + 0x20], eax
lea edx, [eax + edx]
mov ebx, dword [esp + 0x40]
mov byte [esp + 0x88], bl
xorps xmm0, xmm0
movups xmmword [esp + 0x89], xmm0
mov byte [esp + 0x99], 0
mov ebx, dword [esp + 0x28]
mov byte [esp + 0x9a], bl
mov byte [esp + 0x9b], bh
mov byte [esp + 0x9c], dl
mov byte [esp + 0x9d], dh
lea edx, [esp + 0x80]
push 0x1e
push edx
push ecx
push edi
mov edi, dword [ebp + 8]
push dword [edi + 0x44]
call dword [edi + 0x3c]
add esp, 0x14
cmp eax, 0x1e
mov eax, dword [esp + 0x14]
jne 0xcd5d05
mov esi, dword [esp + 0x18]
add esi, 0x1e
adc eax, 0
mov dword [esp + 0x14], eax
push ebx
push dword [ebp + 0xc]
push eax
push esi
push dword [edi + 0x44]
call dword [edi + 0x3c]
add esp, 0x14
cmp eax, ebx
jne 0xcd5cf8
add esi, ebx
mov ecx, dword [esp + 0x14]
adc ecx, 0
cmp dword [esp + 0x10], 0
mov ebx, esi
mov esi, ecx
je 0xcd5d11
lea eax, [esp + 0xc0]
mov edi, dword [esp + 0x20]
push edi
push eax
push esi
push ebx
mov eax, dword [ebp + 8]
push dword [eax + 0x44]
call dword [eax + 0x3c]
add esp, 0x14
cmp eax, edi
jne 0xcd5d82
add ebx, edi
adc esi, 0
jmp 0xcd5d19
push dword [esp + 0xc]
push dword [edi + 0x34]
call dword [edi + 0x2c]
add esp, 8
mov dword [edi + 0x1c], 0x13
jmp 0xcd5708
mov dword [esp + 0x10], 0
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0x38]
test edi, edi
je 0xcd5d3b
push edi
push dword [ebp + 0x34]
push esi
push ebx
push dword [eax + 0x44]
call dword [eax + 0x3c]
add esp, 0x14
cmp eax, edi
jne 0xcd5d82
add ebx, edi
adc esi, 0
movzx eax, byte [esp + 0x24]
mov edi, dword [ebp + 0x14]
test al, al
je 0xcd5dad
push edi
push dword [ebp + 0x10]
mov dword [esp + 0x1c], esi
push esi
mov dword [esp + 0x24], ebx
push ebx
mov eax, dword [ebp + 8]
push dword [eax + 0x44]
call dword [eax + 0x3c]
add esp, 0x14
cmp eax, edi
jne 0xcd5d91
mov eax, dword [ebp + 0x14]
add dword [esp + 0x18], eax
adc dword [esp + 0x14], 0
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], 0
jmp 0xcd5e6e
mov eax, dword [ebp + 8]
mov dword [eax + 0x1c], 0x13
jmp 0xcd5708
push dword [esp + 0xc]
mov esi, dword [ebp + 8]
push dword [esi + 0x34]
call dword [esi + 0x2c]
add esp, 8
mov dword [esi + 0x1c], 0x13
jmp 0xcd5708
test edi, edi
je 0xcd5e66
mov eax, dword [ebp + 8]
mov dword [esp + 0x58], eax
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], esi
mov dword [esp + 0x6c], 0
mov edx, dword [esp + 0x2c]
cmp edx, 0xa
mov ecx, 0xa
cmovb ecx, edx
mov dword [esp + 0x68], 0
xor eax, eax
cmp edx, 4
setl al
shl eax, 0xe
or eax, dword [ecx*4 + 0xd0c988]
mov ecx, eax
or ecx, 0x80000
test edx, edx
cmovne ecx, eax
lea eax, [esp + 0x58]
push ecx
push eax
push 0xcd62a0
mov esi, dword [esp + 0x18]
push esi
call fcn.00cd4990
add esp, 0x10
mov dword [esp + 0xbc], edi
lea eax, [esp + 0xbc]
push 4
push 0
push 0
push eax
push dword [ebp + 0x10]
push esi
call fcn.00cd34b0
add esp, 0x18
cmp eax, 1
jne 0xcd5f71
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x14], eax
jmp 0xcd5e6e
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], esi
push dword [esp + 0xc]
mov eax, dword [ebp + 8]
push dword [eax + 0x34]
call dword [eax + 0x2c]
add esp, 8
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edi, eax
mov dword [esp + 0x2c], ecx
or eax, ecx
je 0xcd6098
mov dword [esp + 0x58], 0x8074b50
mov ecx, dword [esp + 0x78]
mov byte [esp + 0x5c], cl
mov byte [esp + 0x5d], ch
mov eax, ecx
shr eax, 0x10
mov byte [esp + 0x5e], al
mov eax, ecx
shr eax, 0x18
mov byte [esp + 0x5f], al
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
cmp dword [esp + 0x10], 0
je 0xcd5f8d
mov byte [esp + 0x60], cl
mov byte [esp + 0x61], ch
mov eax, ecx
shr eax, 0x10
mov byte [esp + 0x62], al
mov eax, edx
shr eax, 0x10
shr ecx, 0x18
mov byte [esp + 0x63], cl
mov ecx, edx
shr ecx, 0x18
mov byte [esp + 0x64], dl
mov byte [esp + 0x65], dh
mov byte [esp + 0x66], al
mov byte [esp + 0x67], cl
mov ecx, edi
mov byte [esp + 0x68], cl
mov byte [esp + 0x69], ch
mov eax, edi
shr eax, 0x10
mov byte [esp + 0x6a], al
mov eax, edi
shr eax, 0x18
mov byte [esp + 0x6b], al
mov dword [esp + 0x24], 0x38
mov dword [esp + 0xb4], 0x30
mov ecx, 0x28
mov dword [esp + 0xc], 0x18
mov dword [esp + 0x54], 0x17
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x1f], al
mov dword [esp + 0xb0], 0x16
mov dword [esp + 0xac], 0x15
mov dword [esp + 0xa8], 0x14
jmp 0xcd5ff3
push dword [esp + 0xc]
mov esi, dword [ebp + 8]
push dword [esi + 0x34]
call dword [esi + 0x2c]
add esp, 8
mov dword [esi + 0x1c], 0xc
jmp 0xcd5708
test edx, edx
je 0xcd5fa0
mov eax, dword [ebp + 8]
mov dword [eax + 0x1c], 0x1d
jmp 0xcd5708
mov dword [esp + 0x60], ecx
mov dword [esp + 0x24], 0x18
mov dword [esp + 0xb4], 0x10
mov ecx, 8
mov dword [esp + 0x54], 0xf
mov dword [esp + 0xb0], 0xe
mov eax, edi
mov byte [esp + 0x1f], al
mov dword [esp + 0xac], 0xd
mov dword [esp + 0xa8], 0xc
mov dword [esp + 0xc], 0x10
mov ebx, edi
mov edx, dword [esp + 0x2c]
shrd ebx, edx, cl
mov eax, edx
shr eax, cl
test cl, 0x20
cmove eax, ebx
mov esi, edi
mov ecx, dword [esp + 0xb4]
shrd esi, edx, cl
mov dword [esp + 0xb8], esi
movzx ebx, byte [esp + 0x1f]
mov esi, dword [esp + 0xa8]
mov byte [esp + esi + 0x58], bl
mov ebx, dword [esp + 0xac]
mov byte [esp + ebx + 0x58], al
mov eax, edx
shr eax, cl
test cl, 0x20
cmove eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xb0]
mov byte [esp + ecx + 0x58], al
mov ecx, dword [esp + 0x24]
shrd edi, edx, cl
shr edx, cl
test cl, 0x20
cmove edx, edi
mov eax, dword [esp + 0x54]
mov byte [esp + eax + 0x58], dl
lea eax, [esp + 0x58]
mov esi, dword [esp + 0xc]
push esi
push eax
push dword [esp + 0x1c]
push dword [esp + 0x24]
mov eax, dword [ebp + 8]
push dword [eax + 0x44]
call dword [eax + 0x3c]
add esp, 0x14
cmp eax, esi
jne 0xcd5708
mov eax, dword [esp + 0xc]
add dword [esp + 0x18], eax
adc dword [esp + 0x14], 0
cmp dword [esp + 0x10], 0
je 0xcd60ea
xor ecx, ecx
mov edx, 0xfffffffe
cmp edx, dword [esp + 0x30]
mov eax, 0
sbb eax, dword [esp + 0x34]
lea eax, [esp + 0x30]
cmovae eax, ecx
cmp edx, dword [esp + 0x38]
mov edx, 0
sbb edx, dword [esp + 0x3c]
lea esi, [esp + 0x48]
cmovae esi, ecx
lea edx, [esp + 0x38]
cmovae edx, ecx
lea ecx, [esp + 0xc0]
push eax
push esi
call fcn.00cd6240
add esp, 8
mov dword [esp + 0x20], eax
movzx ebx, word [esp + 0x7c]
movzx esi, word [esp + 0x40]
movzx eax, word [esp + 0x20]
movzx edi, word [esp + 0x28]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
push dword [ebp + 0x40]
push dword [ebp + 0x3c]
push dword [esp + 0x4c]
push dword [esp + 0x40]
push dword [esp + 0x40]
push 0
push ebx
push esi
push dword [esp + 0x98]
push dword [esp + 0x70]
push dword [esp + 0x70]
push dword [esp + 0x68]
push dword [esp + 0x68]
push dword [esp + 0xa8]
push dword [ebp + 0x18]
push eax
push dword [esp + 0x50]
push edi
call fcn.00cd6300
add esp, 0x48
test eax, eax
je 0xcd5708
mov eax, dword [ebp + 8]
inc dword [eax + 0x10]
mov ecx, dword [esp + 0x18]
mov dword [eax], ecx
mov ecx, dword [esp + 0x14]
mov dword [eax + 4], ecx
mov eax, 1
jmp 0xcd570a