Function at 0x5e8040
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x880703
push eax
mov al, byte [0x9d9794]
mov dword fs:[0], esp
sub esp, 0x3c
test al, 1
jne 0x5e8083
mov dl, al
mov ecx, 0x9d9780
or dl, 1
mov byte [0x9d9794], dl
call fcn.0082bd15
push 0x5e84e0
call fcn.005fc64d
add esp, 4
mov eax, dword [0x9d98a0]
push ebp
xor ebp, ebp
cmp eax, ebp
jne 0x5e84af
mov eax, dword [0x9dce80]
cmp eax, ebp
je 0x5e80b5
push str.CSDGsDesTransformRequest::InitHeader_0
push str.SDTransform
push 0xffffffffffffffff
push 0x9dc5ec
call fcn.006600d0
add esp, 0x10
push 1
push 0x9d9860
lea ecx, [esp + 0x2c]
call fcn.005f27b7
mov eax, dword [0x9d98a0]
mov dword [esp + 0x48], ebp
cmp eax, ebp
jne 0x5e849e
lea ecx, [esp + 0x1c]
mov dword [0x9d98a0], 1
call fcn.00626920
push 0x20019
push 0x8a22e4
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [esp + 0x28]
mov byte [esp + 0x54], 1
call fcn.00626a40
test eax, eax
je 0x5e845a
cmp dword [0x9dce80], ebp
je 0x5e812f
push str.CSDGsDesTransformRequest::InitHeader_1
push str.SDTransform
push 0xffffffffffffffff
push 0x9dc5ec
call fcn.006600d0
add esp, 0x10
lea eax, [esp + 0x10]
push str.SDFile_Transform_Header_Distance
push eax
lea ecx, [esp + 0x24]
call fcn.00627440
mov eax, dword [esp + 0x10]
mov byte [esp + 0x48], 2
cmp dword [eax - 8], ebp
je 0x5e818c
push eax
call fcn.005fd426
mov dword [0x9d98a4], eax
mov eax, dword [0x9dce80]
add esp, 4
cmp eax, ebp
je 0x5e818c
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x10]
mov edx, dword [ecx]
push edx
push eax
push str.CSDGsDesTransformRequest::InitHeader_wstrDistance___s__lDistanceToMove___d
push str.SDTransform
push 0xffffffffffffffff
push 0x9dc5ec
call fcn.006600d0
add esp, 0x18
push ebx
push esi
push edi
lea ecx, [esp + 0x18]
push str.SDFile_Transform_Header
push ecx
lea ecx, [esp + 0x30]
call fcn.00627440
lea ecx, [esp + 0x3c]
mov byte [esp + 0x54], 3
call fcn.0061ebd0
lea edx, [esp + 0x18]
lea ecx, [esp + 0x14]
push edx
mov byte [esp + 0x58], 4
call fcn.00617440
lea eax, [esp + 0x20]
lea ecx, [esp + 0x10]
push eax
push 0x92f588
push ecx
lea ecx, [esp + 0x20]
mov byte [esp + 0x60], 5
mov dword [esp + 0x2c], ebp
call fcn.0061c7f0
mov eax, dword [esp + 0x10]
mov byte [esp + 0x54], 6
cmp dword [eax - 8], ebp
je 0x5e8282
mov bl, 7
push ebp
push eax
call fcn.006a76b0
add esp, 8
test eax, eax
je 0x5e821b
mov eax, dword [esp + 0x40]
lea edx, [esp + 0x10]
push edx
push eax
lea ecx, [esp + 0x44]
call fcn.0061f330
jmp 0x5e8241
cmp dword [0x9dce80], ebp
je 0x5e8241
mov ecx, dword [esp + 0x10]
push ecx
push str.CSDGsDesTransformRequest::InitHeader_strToken__s__Is_not_Valid16
push str.SDTransform
push 0xffffffffffffffff
push 0x9dc5ec
call fcn.006600d0
add esp, 0x14
lea edx, [esp + 0x20]
lea eax, [esp + 0x24]
push edx
push 0x92f588
push eax
lea ecx, [esp + 0x20]
call fcn.0061c7f0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x58], bl
call fcn.00618070
lea ecx, [esp + 0x24]
mov byte [esp + 0x54], 6
call fcn.00617ec0
mov eax, dword [esp + 0x10]
cmp dword [eax - 8], ebp
jne 0x5e81f8
cmp dword [0x9dce80], ebp
je 0x5e82a8
mov ecx, dword [esp + 0x18]
push ecx
push str.CSDGsDesTransformRequest::InitHeader_wstrValue__s__2
push str.SDTransform
push 0xffffffffffffffff
push 0x9dc5ec
call fcn.006600d0
add esp, 0x14
mov eax, dword [esp + 0x40]
mov edi, eax
lea edx, [eax + eax*4]
lea eax, [edx*4 + 4]
push eax
call fcn.008325b4
add esp, 4
mov dword [esp + 0x24], eax
cmp eax, ebp
mov byte [esp + 0x54], 8
je 0x5e82ea
push fcn.0082c0a3
push fcn.0082c070
lea esi, [eax + 4]
push edi
push 0x14
push esi
mov dword [eax], edi
call fcn.005fd27b
mov eax, esi
jmp 0x5e82ec
xor eax, eax
cmp eax, ebp
mov byte [esp + 0x54], 6
mov dword [0x9d9898], eax
je 0x5e83e6
mov eax, dword [esp + 0x40]
xor edi, edi
cmp eax, ebp
jle 0x5e83e6
mov ecx, dword [esp + 0x3c]
push 0xffffffffffffffff
mov edx, dword [ecx + edi*4]
mov eax, dword [edx - 8]
cdq
sub eax, edx
mov esi, eax
mov eax, dword [0x9d9898]
sar esi, 1
push esi
lea ecx, [eax + ebp]
call fcn.0082c0d0
mov ecx, dword [esp + 0x3c]
mov edx, dword [0x9d9898]
push esi
mov eax, dword [ecx + edi*4]
lea ecx, [edx + ebp]
push ecx
push eax
call fcn.006a7560
mov edx, dword [0x9d989c]
mov ebx, eax
mov eax, dword [0x9d9898]
add esp, 0xc
mov ecx, dword [eax + ebp + 8]
cmp edx, ecx
jae 0x5e8363
mov dword [0x9d989c], ecx
mov ecx, dword [0x9dce80]
test ecx, ecx
je 0x5e83c3
mov ecx, dword [eax + ebp + 8]
mov eax, dword [eax + ebp + 4]
push ecx
lea edx, [esp + 0x28]
push eax
push edx
call fcn.006a7240
add esp, 0xc
mov ecx, dword [esp + 0x3c]
mov eax, dword [eax]
push ebx
push esi
mov edx, dword [ecx + edi*4]
push eax
push edx
push edi
push str.CSDGsDesTransformRequest::InitHeader___lu___s____s__size__lu__decode__lu_
push str.SDTransform
push 0xffffffffffffffff
push 0x9dc5ec
mov byte [esp + 0x78], 9
call fcn.006600d0
add esp, 0x24
lea ecx, [esp + 0x24]
mov byte [esp + 0x54], 6
call fcn.00617ec0
mov eax, dword [0x9d9898]
add eax, ebp
mov ecx, 0x9d9780
push eax
mov eax, dword [0x9d9788]
push eax
call fcn.0082bf39
mov eax, dword [esp + 0x40]
inc edi
add ebp, 0x14
cmp edi, eax
jl 0x5e830c
mov eax, dword [0x9dce80]
xor ebp, ebp
pop edi
pop esi
cmp eax, ebp
pop ebx
je 0x5e8414
mov ecx, dword [0x9d989c]
push ecx
push str.CSDGsDesTransformRequest::InitHeader_maxlen__lu__3
push str.SDTransform
push 0xffffffffffffffff
push 0x9dc5ec
call fcn.006600d0
add esp, 0x14
lea ecx, [esp + 4]
mov byte [esp + 0x48], 5
call fcn.00617ec0
lea ecx, [esp + 8]
mov byte [esp + 0x48], 4
call fcn.00617ec0
lea ecx, [esp + 0x30]
mov byte [esp + 0x48], 3
call fcn.0061ebe0
lea ecx, [esp + 0xc]
mov byte [esp + 0x48], 2
call fcn.00617ec0
lea ecx, [esp + 0x10]
mov byte [esp + 0x48], 1
call fcn.00617ec0
mov edx, dword [0x9d98a4]
mov ecx, dword [0x9dce80]
xor eax, eax
cmp edx, ebp
setl al
cmp ecx, ebp
mov dword [0x9d9884], eax
je 0x5e8490
push eax
push str.CSDGsDesTransformRequest::InitHeader_m_bTail__lu_
push str.SDTransform
push 0xffffffffffffffff
push 0x9dc5ec
call fcn.006600d0
add esp, 0x14
lea ecx, [esp + 0x1c]
mov byte [esp + 0x48], 0
call fcn.006269c0
lea ecx, [esp + 0x24]
mov dword [esp + 0x48], 0xffffffff
call fcn.005f27f3
mov ecx, dword [esp + 0x50]
push 0x9d9780
call fcn.0082be8e
mov eax, dword [esp + 0x54]
mov edx, dword [0x9d98a4]
mov ecx, dword [esp + 0x40]
pop ebp
mov dword [eax], edx
mov eax, dword [0x9d989c]
mov dword fs:[0], ecx
add esp, 0x48
ret