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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x7c
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x94]
movzx eax, word [eax]
mov esi, ecx
movzx edi, word [esi + 0x50]
mov edx, eax
movsx eax, word [ecx + 0x40]
add edx, 0x20
movsx edx, dx
mov word [esp + 0x3e], di
lea ebx, [edx + eax]
sub edx, eax
mov dword [esp + 0x50], edx
movsx edx, word [ecx + 0x20]
movzx ecx, word [ecx + 0x60]
mov dword [esp + 0x54], ebx
mov eax, edx
movsx ebx, cx
sar ax, 1
sar cx, 1
cwde
movsx ecx, cx
sub eax, ebx
add edx, ecx
movsx ebx, di
movzx edi, word [esi + 0x30]
mov dword [esp + 0x4c], edx
movzx edx, word [esi + 0x70]
mov ebp, ebx
movsx ecx, di
movsx esi, dx
sub ebp, ecx
sar dx, 1
sub ebp, esi
movsx edx, dx
sub ebp, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x44], ebp
sar di, 1
movsx edi, di
movsx edx, word [edx + 0x10]
lea ebp, [esi + edx]
sub esi, edx
sub ebp, ecx
add esi, ebx
sub ebp, edi
movzx edi, word [esp + 0x3e]
add ecx, ebx
mov word [esp + 0x3c], dx
add edx, ecx
mov ecx, dword [esp + 0x44]
movzx ebx, word [esp + 0x54]
add bx, word [esp + 0x4c]
sar di, 1
movsx edi, di
add esi, edi
movzx edi, word [esp + 0x3c]
sar ecx, 2
sar di, 1
movsx edi, di
add edi, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x48], edi
sub edi, ecx
mov ecx, edi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x70], bx
movzx ebx, word [esp + 0x50]
mov ecx, ebp
sar ecx, 2
sub ecx, esi
mov word [edx], di
sar esi, 2
add ebx, eax
add ebp, esi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x10], di
mov word [edx + 0x60], bx
movzx edx, word [esp + 0x50]
mov ebx, dword [esp + 0x94]
mov edi, dword [esp + 0x94]
sub edx, eax
mov eax, edx
mov edx, dword [esp + 0x48]
lea ecx, [ebp + eax]
sub eax, ebp
mov ebp, dword [esp + 0x94]
mov word [ebx + 0x50], ax
movzx eax, word [esp + 0x54]
sub ax, word [esp + 0x4c]
sar edx, 2
add dx, word [esp + 0x44]
mov word [ebx + 0x20], cx
lea ecx, [edx + eax]
sub eax, edx
movsx edx, word [ebx + 2]
mov word [ebx + 0x40], ax
movsx eax, word [ebx + 0x42]
mov word [ebx + 0x30], cx
movzx ecx, word [ebx + 0x62]
movzx edi, word [edi + 0x52]
lea esi, [edx + eax]
sub edx, eax
mov dword [esp + 0x4c], edx
movsx edx, word [ebx + 0x22]
movsx ebx, cx
sar cx, 1
movsx ecx, cx
mov word [esp + 0x3a], di
mov eax, edx
add edx, ecx
sar ax, 1
cwde
sub eax, ebx
movsx ebx, di
movzx edi, word [ebp + 0x32]
mov dword [esp + 0x50], edx
movzx edx, word [ebp + 0x72]
mov ebp, ebx
mov dword [esp + 0x48], esi
movsx ecx, di
movsx esi, dx
sub ebp, ecx
sar dx, 1
sub ebp, esi
movsx edx, dx
sub ebp, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x44], ebp
sar di, 1
movsx edi, di
movsx edx, word [edx + 0x12]
lea ebp, [esi + edx]
sub esi, edx
sub ebp, ecx
add esi, ebx
sub ebp, edi
movzx edi, word [esp + 0x3a]
add ecx, ebx
mov word [esp + 0x38], dx
add edx, ecx
mov ecx, dword [esp + 0x44]
movzx ebx, word [esp + 0x48]
add bx, word [esp + 0x50]
sar di, 1
movsx edi, di
add esi, edi
movzx edi, word [esp + 0x38]
sar ecx, 2
sar di, 1
movsx edi, di
add edi, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x54], edi
sub edi, ecx
mov ecx, edi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 2], di
mov ecx, ebp
mov word [edx + 0x72], bx
movzx ebx, word [esp + 0x4c]
sar ecx, 2
sub ecx, esi
add ebx, eax
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x12], di
mov edi, dword [esp + 0x94]
mov word [edx + 0x62], bx
movzx edx, word [esp + 0x4c]
mov ebx, dword [esp + 0x94]
sub edx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
sar esi, 2
add ebp, esi
lea ecx, [ebp + eax]
sub eax, ebp
mov ebp, dword [esp + 0x94]
mov word [ebx + 0x52], ax
movzx eax, word [esp + 0x48]
sar edx, 2
sub ax, word [esp + 0x50]
add dx, word [esp + 0x44]
mov word [ebx + 0x22], cx
lea ecx, [edx + eax]
sub eax, edx
movsx edx, word [ebx + 4]
mov word [ebx + 0x42], ax
movsx eax, word [ebx + 0x44]
mov word [ebx + 0x32], cx
movzx ecx, word [ebx + 0x64]
movzx edi, word [edi + 0x54]
lea esi, [edx + eax]
sub edx, eax
mov dword [esp + 0x4c], edx
movsx edx, word [ebx + 0x24]
movsx ebx, cx
sar cx, 1
movsx ecx, cx
mov word [esp + 0x36], di
mov eax, edx
add edx, ecx
sar ax, 1
cwde
sub eax, ebx
movsx ebx, di
movzx edi, word [ebp + 0x34]
mov dword [esp + 0x50], edx
movzx edx, word [ebp + 0x74]
mov ebp, ebx
mov dword [esp + 0x48], esi
movsx ecx, di
movsx esi, dx
sub ebp, ecx
sar dx, 1
sub ebp, esi
movsx edx, dx
sub ebp, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x44], ebp
sar di, 1
movsx edi, di
movsx edx, word [edx + 0x14]
lea ebp, [esi + edx]
sub esi, edx
sub ebp, ecx
add esi, ebx
sub ebp, edi
movzx edi, word [esp + 0x36]
add ecx, ebx
mov word [esp + 0x34], dx
add edx, ecx
sar di, 1
movsx edi, di
add esi, edi
movzx edi, word [esp + 0x34]
sar di, 1
movsx edi, di
add edi, edx
mov dword [esp + 0x54], edi
mov ecx, dword [esp + 0x44]
movzx ebx, word [esp + 0x48]
mov edx, dword [esp + 0x94]
add bx, word [esp + 0x50]
sar ecx, 2
sub edi, ecx
mov ecx, edi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x74], bx
movzx ebx, word [esp + 0x4c]
mov ecx, ebp
mov word [edx + 4], di
add ebx, eax
sar ecx, 2
sub ecx, esi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x14], di
sar esi, 2
mov edi, dword [esp + 0x94]
mov word [edx + 0x64], bx
movzx edx, word [esp + 0x4c]
add ebp, esi
mov ebx, dword [esp + 0x94]
sub edx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
lea ecx, [ebp + eax]
sub eax, ebp
mov ebp, dword [esp + 0x94]
mov word [ebx + 0x54], ax
movzx eax, word [esp + 0x48]
sub ax, word [esp + 0x50]
sar edx, 2
add dx, word [esp + 0x44]
mov word [ebx + 0x24], cx
lea ecx, [edx + eax]
sub eax, edx
movsx edx, word [ebx + 6]
mov word [ebx + 0x44], ax
movsx eax, word [ebx + 0x46]
mov word [ebx + 0x34], cx
movzx ecx, word [ebx + 0x66]
movzx edi, word [edi + 0x56]
lea esi, [edx + eax]
sub edx, eax
mov dword [esp + 0x4c], edx
movsx edx, word [ebx + 0x26]
movsx ebx, cx
sar cx, 1
movsx ecx, cx
mov word [esp + 0x32], di
mov eax, edx
add edx, ecx
sar ax, 1
cwde
sub eax, ebx
movsx ebx, di
movzx edi, word [ebp + 0x36]
mov dword [esp + 0x50], edx
movzx edx, word [ebp + 0x76]
mov ebp, ebx
mov dword [esp + 0x48], esi
movsx ecx, di
movsx esi, dx
sub ebp, ecx
sar dx, 1
sub ebp, esi
movsx edx, dx
sub ebp, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x44], ebp
sar di, 1
movsx edi, di
movsx edx, word [edx + 0x16]
lea ebp, [esi + edx]
sub esi, edx
sub ebp, ecx
add esi, ebx
mov word [esp + 0x30], dx
sub ebp, edi
movzx edi, word [esp + 0x32]
add ecx, ebx
movzx ebx, word [esp + 0x48]
add edx, ecx
mov ecx, dword [esp + 0x44]
add bx, word [esp + 0x50]
sar di, 1
movsx edi, di
add esi, edi
movzx edi, word [esp + 0x30]
sar ecx, 2
sar di, 1
movsx edi, di
add edi, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x54], edi
sub edi, ecx
mov ecx, edi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x76], bx
movzx ebx, word [esp + 0x4c]
mov ecx, ebp
sar ecx, 2
sub ecx, esi
mov word [edx + 6], di
sar esi, 2
add ebx, eax
add ebp, esi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x16], di
mov edi, dword [esp + 0x94]
mov word [edx + 0x66], bx
movzx edx, word [esp + 0x4c]
mov ebx, dword [esp + 0x94]
sub edx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
lea ecx, [ebp + eax]
sub eax, ebp
mov ebp, dword [esp + 0x94]
mov word [ebx + 0x56], ax
movzx eax, word [esp + 0x48]
sub ax, word [esp + 0x50]
sar edx, 2
add dx, word [esp + 0x44]
mov word [ebx + 0x26], cx
lea ecx, [edx + eax]
sub eax, edx
movsx edx, word [ebx + 8]
mov word [ebx + 0x46], ax
movsx eax, word [ebx + 0x48]
mov word [ebx + 0x36], cx
movzx ecx, word [ebx + 0x68]
movzx edi, word [edi + 0x58]
lea esi, [edx + eax]
sub edx, eax
mov dword [esp + 0x4c], edx
movsx edx, word [ebx + 0x28]
movsx ebx, cx
sar cx, 1
movsx ecx, cx
mov word [esp + 0x2e], di
mov eax, edx
add edx, ecx
sar ax, 1
cwde
sub eax, ebx
movsx ebx, di
movzx edi, word [ebp + 0x38]
mov dword [esp + 0x50], edx
movzx edx, word [ebp + 0x78]
mov ebp, ebx
mov dword [esp + 0x48], esi
movsx ecx, di
movsx esi, dx
sub ebp, ecx
sar dx, 1
sub ebp, esi
movsx edx, dx
sub ebp, edx
mov dword [esp + 0x44], ebp
mov edx, dword [esp + 0x94]
sar di, 1
movsx edi, di
movsx edx, word [edx + 0x18]
lea ebp, [esi + edx]
sub esi, edx
sub ebp, ecx
add esi, ebx
sub ebp, edi
movzx edi, word [esp + 0x2e]
add ecx, ebx
mov word [esp + 0x2c], dx
add edx, ecx
mov ecx, dword [esp + 0x44]
movzx ebx, word [esp + 0x48]
sar di, 1
movsx edi, di
add esi, edi
movzx edi, word [esp + 0x2c]
sar di, 1
movsx edi, di
add edi, edx
mov edx, dword [esp + 0x94]
add bx, word [esp + 0x50]
sar ecx, 2
mov dword [esp + 0x54], edi
sub edi, ecx
mov ecx, edi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x78], bx
movzx ebx, word [esp + 0x4c]
mov ecx, ebp
sar ecx, 2
sub ecx, esi
mov word [edx + 8], di
sar esi, 2
add ebx, eax
add ebp, esi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x18], di
mov edi, dword [esp + 0x94]
mov word [edx + 0x68], bx
movzx edx, word [esp + 0x4c]
mov ebx, dword [esp + 0x94]
sub edx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
lea ecx, [ebp + eax]
sub eax, ebp
mov word [ebx + 0x58], ax
movzx eax, word [esp + 0x48]
sub ax, word [esp + 0x50]
sar edx, 2
add dx, word [esp + 0x44]
mov word [ebx + 0x28], cx
lea ecx, [edx + eax]
sub eax, edx
movsx edx, word [ebx + 0xa]
mov word [ebx + 0x48], ax
movsx eax, word [ebx + 0x4a]
mov word [ebx + 0x38], cx
movzx ecx, word [ebx + 0x6a]
movzx edi, word [edi + 0x5a]
lea esi, [edx + eax]
sub edx, eax
mov dword [esp + 0x4c], edx
movsx edx, word [ebx + 0x2a]
movsx ebx, cx
sar cx, 1
movsx ecx, cx
mov dword [esp + 0x48], esi
mov eax, edx
add edx, ecx
mov dword [esp + 0x50], edx
sar ax, 1
mov word [esp + 0x2a], di
mov ebp, dword [esp + 0x94]
cwde
sub eax, ebx
movsx ebx, di
movzx edi, word [ebp + 0x3a]
movzx edx, word [ebp + 0x7a]
mov ebp, ebx
movsx ecx, di
movsx esi, dx
sub ebp, ecx
sar dx, 1
sub ebp, esi
movsx edx, dx
sub ebp, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x44], ebp
sar di, 1
movsx edi, di
movsx edx, word [edx + 0x1a]
lea ebp, [esi + edx]
sub esi, edx
sub ebp, ecx
add esi, ebx
sub ebp, edi
movzx edi, word [esp + 0x2a]
mov word [esp + 0x28], dx
sar di, 1
movsx edi, di
add esi, edi
movzx edi, word [esp + 0x28]
add ecx, ebx
add edx, ecx
mov ecx, dword [esp + 0x44]
movzx ebx, word [esp + 0x48]
add bx, word [esp + 0x50]
sar di, 1
movsx edi, di
add edi, edx
mov edx, dword [esp + 0x94]
sar ecx, 2
mov dword [esp + 0x54], edi
sub edi, ecx
mov ecx, edi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x7a], bx
movzx ebx, word [esp + 0x4c]
mov ecx, ebp
sar ecx, 2
sub ecx, esi
mov word [edx + 0xa], di
sar esi, 2
add ebx, eax
add ebp, esi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x1a], di
mov word [edx + 0x6a], bx
movzx edx, word [esp + 0x4c]
mov ebx, dword [esp + 0x94]
sub edx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
lea ecx, [ebp + eax]
sub eax, ebp
mov word [ebx + 0x5a], ax
movzx eax, word [esp + 0x48]
sub ax, word [esp + 0x50]
sar edx, 2
add dx, word [esp + 0x44]
mov word [ebx + 0x2a], cx
lea ecx, [edx + eax]
sub eax, edx
movsx edx, word [ebx + 0xc]
mov word [ebx + 0x4a], ax
movsx eax, word [ebx + 0x4c]
mov word [ebx + 0x3a], cx
movzx ecx, word [ebx + 0x6c]
lea esi, [edx + eax]
sub edx, eax
mov dword [esp + 0x4c], edx
movsx edx, word [ebx + 0x2c]
movsx ebx, cx
sar cx, 1
movsx ecx, cx
mov dword [esp + 0x48], esi
mov eax, edx
add edx, ecx
mov dword [esp + 0x50], edx
mov edi, dword [esp + 0x94]
sar ax, 1
mov ebp, dword [esp + 0x94]
cwde
sub eax, ebx
movzx edi, word [edi + 0x5c]
movzx edx, word [ebp + 0x7c]
movsx ebx, di
mov word [esp + 0x26], di
movzx edi, word [ebp + 0x3c]
mov ebp, ebx
movsx esi, dx
sar dx, 1
movsx edx, dx
movsx ecx, di
sub ebp, ecx
sub ebp, esi
sub ebp, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x44], ebp
sar di, 1
movsx edi, di
movsx edx, word [edx + 0x1c]
lea ebp, [esi + edx]
sub esi, edx
sub ebp, ecx
sub ebp, edi
movzx edi, word [esp + 0x26]
add esi, ebx
mov word [esp + 0x24], dx
add ecx, ebx
movzx ebx, word [esp + 0x48]
add edx, ecx
mov ecx, dword [esp + 0x44]
add bx, word [esp + 0x50]
sar di, 1
movsx edi, di
add esi, edi
movzx edi, word [esp + 0x24]
sar ecx, 2
sar di, 1
movsx edi, di
add edi, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x54], edi
sub edi, ecx
mov ecx, edi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x7c], bx
movzx ebx, word [esp + 0x4c]
mov ecx, ebp
sar ecx, 2
sub ecx, esi
mov word [edx + 0xc], di
sar esi, 2
add ebx, eax
add ebp, esi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x1c], di
mov word [edx + 0x6c], bx
movzx edx, word [esp + 0x4c]
mov ebx, dword [esp + 0x94]
sub edx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
lea ecx, [ebp + eax]
sub eax, ebp
mov word [ebx + 0x5c], ax
movzx eax, word [esp + 0x48]
sub ax, word [esp + 0x50]
sar edx, 2
add dx, word [esp + 0x44]
mov word [ebx + 0x2c], cx
lea ecx, [edx + eax]
sub eax, edx
movsx edx, word [ebx + 0xe]
mov word [ebx + 0x4c], ax
movsx eax, word [ebx + 0x4e]
mov word [ebx + 0x3c], cx
lea esi, [edx + eax]
sub edx, eax
mov dword [esp + 0x48], esi
mov edi, dword [esp + 0x94]
mov dword [esp + 0x4c], edx
movsx edx, word [ebx + 0x2e]
movzx ecx, word [ebx + 0x6e]
mov ebp, dword [esp + 0x94]
movzx edi, word [edi + 0x5e]
mov eax, edx
movsx ebx, cx
sar ax, 1
sar cx, 1
cwde
movsx ecx, cx
sub eax, ebx
add edx, ecx
movsx ebx, di
mov word [esp + 0x42], di
movzx edi, word [ebp + 0x3e]
mov dword [esp + 0x50], edx
movzx edx, word [ebp + 0x7e]
mov ebp, ebx
movsx ecx, di
movsx esi, dx
sub ebp, ecx
sar dx, 1
sub ebp, esi
movsx edx, dx
sub ebp, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x44], ebp
movsx edx, word [edx + 0x1e]
lea ebp, [esi + edx]
sub ebp, ecx
sar di, 1
sub esi, edx
movsx edi, di
add esi, ebx
sub ebp, edi
movzx edi, word [esp + 0x42]
add ecx, ebx
mov word [esp + 0x40], dx
add edx, ecx
mov ecx, dword [esp + 0x44]
movzx ebx, word [esp + 0x48]
add bx, word [esp + 0x50]
sar di, 1
movsx edi, di
add esi, edi
movzx edi, word [esp + 0x40]
sar ecx, 2
sar di, 1
movsx edi, di
add edi, edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x54], edi
sub edi, ecx
mov ecx, edi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x7e], bx
movzx ebx, word [esp + 0x4c]
mov ecx, ebp
sar ecx, 2
sub ecx, esi
mov word [edx + 0xe], di
sar esi, 2
add ebx, eax
add ebp, esi
lea edi, [ecx + ebx]
sub ebx, ecx
mov word [edx + 0x1e], di
mov word [edx + 0x6e], bx
movzx edx, word [esp + 0x4c]
mov ebx, dword [esp + 0x94]
sub edx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
lea ecx, [ebp + eax]
sub eax, ebp
mov word [ebx + 0x5e], ax
movzx eax, word [esp + 0x48]
sub ax, word [esp + 0x50]
sar edx, 2
add dx, word [esp + 0x44]
mov word [ebx + 0x2e], cx
lea ecx, [edx + eax]
sub eax, edx
mov word [ebx + 0x3e], cx
mov esi, dword [esp + 0x98]
mov edi, dword [esp + 0x98]
mov ebp, dword [esp + 0x98]
mov word [ebx + 0x4e], ax
mov eax, dword [esp + 0x98]
add esi, esi
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x90]
shl edi, 2
mov dword [esp + 0x5c], esi
shl ebp, 3
add esi, dword [esp + 0x98]
sub ebp, eax
mov dword [esp + 0x60], edi
add edi, dword [esp + 0x98]
lea ecx, [ecx + ebp + 8]
mov dword [esp + 0x64], esi
add esi, esi
add edx, ebp
mov dword [esp + 0x74], ebp
neg ebp
mov dword [esp + 0x6c], esi
mov esi, ebx
mov dword [esp + 0x68], edi
mov dword [esp + 0x44], edx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], ebp
lea esi, [esi]
movsx eax, word [esi + 8]
movsx ecx, word [esi]
movsx ebx, word [esi + 4]
movzx edi, word [esi + 0xc]
lea edx, [ecx + eax]
sub ecx, eax
mov eax, ebx
sar ax, 1
movsx ebp, di
cwde
sub eax, ebp
lea ebp, [ecx + eax]
sub ecx, eax
movsx eax, word [esi + 0xa]
sar di, 1
movsx edi, di
add ebx, edi
mov dword [esp + 0x50], ebp
movzx ebp, word [esi + 6]
lea edi, [edx + ebx]
mov dword [esp + 0x48], eax
sub edx, ebx
movzx eax, word [esi + 0xe]
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x58], edx
movsx edx, word [esi + 2]
mov dword [esp + 0x54], ecx
movsx ecx, bp
mov dword [esp + 0x4c], edi
movsx edi, ax
sub ebx, ecx
sar ax, 1
sub ebx, edi
cwde
sub ebx, eax
lea eax, [edi + edx]
sub edi, edx
sub eax, ecx
sar bp, 1
add ecx, dword [esp + 0x48]
movsx ebp, bp
sub eax, ebp
movzx ebp, word [esi + 0xa]
add edi, dword [esp + 0x48]
add ecx, edx
movzx edx, word [esi + 2]
sar bp, 1
movsx ebp, bp
sar dx, 1
add edi, ebp
movsx edx, dx
add edx, ecx
mov ecx, edi
mov ebp, edx
sar ecx, 2
add ecx, eax
sar ebp, 2
sar eax, 2
add ebp, ebx
sub eax, edi
mov edi, edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x48], ecx
mov ecx, ebx
mov ebx, dword [esp + 0x44]
sar ecx, 2
sub edi, ecx
movzx ecx, byte [ebx + edx]
mov edx, dword [esp + 0x4c]
add edx, edi
sar edx, 6
add edx, ecx
test edx, 0xffffff00
mov ecx, edx
je 0x6c39a656
mov ebx, dword [esp + 0x44]
neg edx
mov ecx, edx
sar ecx, 0x1f
mov edx, dword [esp + 0x70]
mov byte [ebx + edx], cl
mov edx, dword [esp + 0x98]
sub ebx, dword [esp + 0x74]
movzx ecx, byte [ebx + edx]
mov edx, dword [esp + 0x50]
add edx, eax
sar edx, 6
add edx, ecx
test edx, 0xffffff00
mov ecx, edx
je 0x6c39a688
neg edx
mov ecx, edx
sar ecx, 0x1f
mov edx, dword [esp + 0x98]
mov byte [ebx + edx], cl
mov edx, dword [esp + 0x5c]
movzx ecx, byte [ebx + edx]
mov edx, dword [esp + 0x54]
add edx, dword [esp + 0x48]
sar edx, 6
add edx, ecx
test edx, 0xffffff00
mov ecx, edx
je 0x6c39a6b8
neg edx
mov ecx, edx
sar ecx, 0x1f
mov edx, dword [esp + 0x5c]
mov byte [ebx + edx], cl
mov edx, dword [esp + 0x64]
movzx ecx, byte [ebx + edx]
mov edx, dword [esp + 0x58]
add edx, ebp
sar edx, 6
add edx, ecx
test edx, 0xffffff00
mov ecx, edx
je 0x6c39a6e3
neg edx
mov ecx, edx
sar ecx, 0x1f
mov edx, dword [esp + 0x64]
mov byte [ebx + edx], cl
mov edx, dword [esp + 0x60]
movzx ecx, byte [ebx + edx]
mov edx, dword [esp + 0x58]
sub edx, ebp
sar edx, 6
add edx, ecx
test edx, 0xffffff00
mov ecx, edx
je 0x6c39a70e
neg edx
mov ecx, edx
sar ecx, 0x1f
mov ebp, dword [esp + 0x60]
mov byte [ebx + ebp], cl
mov ecx, dword [esp + 0x68]
movzx edx, byte [ebx + ecx]
mov ecx, dword [esp + 0x54]
sub ecx, dword [esp + 0x48]
sar ecx, 6
add edx, ecx
test edx, 0xffffff00
mov ecx, edx
je 0x6c39a73b
neg edx
mov ecx, edx
sar ecx, 0x1f
mov ebp, dword [esp + 0x68]
mov byte [ebx + ebp], cl
mov ecx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x50]
movzx edx, byte [ebx + ecx]
sub ebp, eax
mov eax, ebp
sar eax, 6
add edx, eax
test edx, 0xffffff00
mov eax, edx
je 0x6c39a768
neg edx
mov eax, edx
sar eax, 0x1f
mov edx, dword [esp + 0x6c]
mov ecx, dword [esp + 0x44]
mov byte [ebx + edx], al
mov edx, dword [esp + 0x4c]
movzx eax, byte [ecx]
sub edx, edi
sar edx, 6
add eax, edx
test eax, 0xffffff00
mov edx, eax
je 0x6c39a791
neg eax
mov edx, eax
sar edx, 0x1f
mov ebx, dword [esp + 0x44]
add esi, 0x10
mov edi, dword [esp + 0x78]
mov byte [ebx], dl
add ebx, 1
cmp ebx, edi
mov dword [esp + 0x44], ebx
jne 0x6c39a570
mov edi, dword [esp + 0x94]
mov edx, pe_nt_image_headers32
test edi, 1
jne 0x6c39a7f0
test edi, 2
jne 0x6c39a800
mov ecx, edx
xor eax, eax
shr ecx, 2
test dl, 2
rep stosd dword es:[edi], eax
je 0x6c39a7df
mov word [edi], 0
add edi, 2
and edx, 1
je 0x6c39a7e7
mov byte [edi], 0
add esp, 0x7c
pop ebx
pop esi
pop edi
pop ebp
ret
mov byte [edi], 0
add edi, 1
mov dl, 0x7f
test edi, 2
je 0x6c39a7c9
mov word [edi], 0
sub edx, 2
add edi, 2
jmp 0x6c39a7c9