Function at 0x1008aca0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x100b82db
mov eax, dword fs:[0]
push eax
sub esp, 0x2a8
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x2a0], eax
push ebx
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x2b8]
mov dword fs:[0], eax
mov esi, edx
mov ebx, ecx
mov dword [esp + 0x4c], ebx
cmp dword [ebx + 4], 0xc000
mov eax, dword [ebp + 8]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x2c], eax
jb 0x1008bd14
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x1008ad19
mov al, byte [ecx + 0x88]
test al, al
je 0x1008ad19
mov eax, dword [ecx + 0xc]
jmp 0x1008ad1b
xor eax, eax
mov eax, dword [eax + 0x1c]
mov edi, dword [ebx]
mov dword [esp + 0x54], eax
test ecx, ecx
je 0x1008ad30
mov edx, dword [ecx + 0x84]
jmp 0x1008ad32
xor edx, edx
mov eax, dword [edx + 0xc]
sub eax, dword [edx + 8]
sar eax, 2
test ax, ax
je 0x1008bd14
mov eax, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x84]
mov edx, dword [eax + 0x10]
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
sar eax, 2
mov dword [esp + 0x28], edx
test ax, ax
je 0x1008ad7f
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
sar eax, 2
test eax, eax
je 0x1008ad76
mov eax, dword [ecx + 8]
mov eax, dword [eax]
jmp 0x1008ad78
xor eax, eax
mov eax, dword [eax]
cmp edx, dword [eax + 0xc]
jb 0x1008ada1
push 1
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x58]
push eax
push edx
call fcn.10099ab0
test al, al
je 0x1008bd14
mov edx, dword [esp + 0x50]
mov dword [esp + 0x28], edx
cmp edx, dword [esi + 4]
jae 0x1008bd14
mov eax, dword [ebx + 4]
cmp edx, eax
jae 0x1008bd14
push edx
push eax
mov eax, dword [esp + 0x54]
lea ecx, [esp + 0x74]
xor ebx, ebx
mov byte [esp + 0x2b], 0
mov byte [esp + 0x28], 0
mov byte [esp + 0x2a], 0
push dword [eax]
mov byte [esp + 0x2d], 0
mov byte [esp + 0x54], 0
mov byte [esp + 0x2a], 0
mov byte [esp + 0x2b], 0
mov byte [esp + 0x1f], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x3c], ebx
call fcn.1001d150
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x1008ae1b
mov ecx, dword [ecx + 0x84]
jmp 0x1008ae1d
xor ecx, ecx
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
lea ecx, [esp + 0x50]
push ecx
sar eax, 2
lea ecx, [esp + 0x6c]
dec eax
movzx eax, ax
push ecx
push eax
mov ecx, esi
mov dword [esp + 0x40], eax
call fcn.10095250
test al, al
je 0x1008bd14
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x1008ae57
mov ecx, dword [ecx + 0x84]
jmp 0x1008ae59
xor ecx, ecx
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
mov edx, dword [esp + 0x34]
sar eax, 2
cmp dx, ax
jae 0x1008bd14
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
movzx esi, dx
sar eax, 2
cmp esi, eax
jae 0x1008ae87
mov eax, dword [ecx + 8]
mov esi, dword [eax + esi*4]
jmp 0x1008ae89
xor esi, esi
mov eax, dword [esi]
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x34], ecx
cmp byte [esi + 0x24], bl
jne 0x1008aea2
mov ecx, esi
call fcn.10097cc0
mov ecx, dword [esp + 0x34]
mov eax, dword [esi + 0x20]
add eax, ecx
cmp ecx, eax
ja 0x1008bd14
mov edx, dword [esp + 0x28]
mov eax, 0x100
add edx, edi
movzx ecx, byte [edx + 1]
imul cx, ax
movzx eax, byte [edx]
add cx, ax
movzx eax, cx
mov ecx, 0x5756
cmp ax, cx
jne 0x1008b070
movzx ecx, byte [edx + 0x1a1]
lea esi, [edx + 0x1a0]
mov eax, 0x100
imul cx, ax
movzx eax, byte [esi]
add cx, ax
movzx eax, cx
mov ecx, 0xf9
cmp ax, cx
jne 0x1008b070
push 0x9c
push edx
call fcn.1001cbb0
add esp, 8
cmp eax, 0x1965cba5
jne 0x1008b070
push 0x20
push esi
call fcn.1001cbb0
add esp, 8
cmp eax, 0xeb82dd47
jne 0x1008b070
mov esi, dword [esp + 0x28]
lea ecx, [esp + 0x6c]
add esi, 0xc1
push esi
call fcn.1001d110
mov eax, dword [esp + 0x28]
add eax, 0xe0
cmp esi, eax
jae 0x1008bd14
lea ebx, [ebx]
lea edx, [esp + 0x48]
lea ecx, [esp + 0x6c]
call fcn.100ae1f0
mov edx, eax
test edx, edx
je 0x1008bd14
movzx ecx, byte [esi + edi]
sub ecx, 0x81
je 0x1008b033
sub ecx, 0x37
je 0x1008afa8
sub ecx, 6
mov cl, byte [esp + 0x1f]
mov ch, byte [esp + 0x1e]
jne 0x1008afb6
mov eax, dword [esi + edi + 1]
mov dword [esp + 0x18], eax
mov byte [esp + 0x20], 1
jmp 0x1008afb6
mov ebx, dword [esi + edi + 1]
mov cl, 1
mov byte [esp + 0x1f], cl
mov ch, byte [esp + 0x1e]
mov eax, dword [esp + 0x28]
add esi, edx
add eax, 0xe0
cmp esi, eax
jb 0x1008af60
cmp byte [esp + 0x20], 0
je 0x1008bd14
test cl, cl
je 0x1008bd14
test ch, ch
je 0x1008bd14
imul ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x24]
add eax, 0xfffff9f0
mov ecx, dword [esp + 0x68]
sub ebx, dword [esp + 0x34]
add ebx, ecx
add eax, ebx
mov dword [edx], eax
mov edx, dword [esp + 0x4c]
cmp eax, dword [edx + 4]
jae 0x1008bd14
cmp eax, ecx
jb 0x1008bd14
cmp eax, dword [esp + 0x50]
ja 0x1008bd14
mov eax, dword [esp + 0x2c]
mov dword [eax], 0x210
mov eax, 1
jmp 0x1008bd16
movzx ecx, byte [esi + edi]
mov eax, 0x100
imul cx, ax
movzx eax, byte [esi + edi + 1]
add cx, ax
movzx eax, cx
mov ecx, 0x81c6
cmp ax, cx
mov cl, byte [esp + 0x1f]
jne 0x1008afb2
mov eax, dword [esi + edi + 2]
mov ch, 1
mov byte [esp + 0x1e], ch
mov dword [esp + 0x14], eax
jmp 0x1008afb6
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x6c]
push dword [esp + 0x28]
mov dword [edx], ebx
call fcn.1001d110
mov eax, dword [esp + 0x28]
mov esi, eax
lea ecx, [eax + 0x4b]
mov dword [esp + 0x58], ecx
cmp eax, ecx
jae 0x1008bd14
jmp 0x1008b0a0
lea edx, [esp + 0x1e]
lea ecx, [esp + 0x6c]
call fcn.100ae1f0
mov ecx, eax
mov dword [esp + 0x38], ecx
test ecx, ecx
je 0x1008bd14
mov dl, byte [esi + edi]
movzx ecx, dl
add ecx, 0xfffffff1
cmp ecx, 0xd9
ja case.0x1008b0d7.16
movzx eax, byte [ecx + 0x1008bd60]
jmp dword [eax*4 + 0x1008bd3c]
cmp esi, dword [esp + 0x28]
jne case.0x1008b0d7.16
cmp dl, 0x51
je 0x1008b114
cmp dl, 0x50
je 0x1008b114
cmp dl, 0x52
je 0x1008b114
cmp dl, 0x53
je 0x1008b114
cmp dl, 0x54
je 0x1008b114
cmp dl, 0x55
je 0x1008b114
cmp dl, 0x56
je 0x1008b114
cmp dl, 0x57
jne 0x1008b1a0
mov al, byte [esi + edi + 1]
cmp al, 0x50
je 0x1008b138
cmp al, 0x51
je 0x1008b138
cmp al, 0x52
je 0x1008b138
cmp al, 0x53
je 0x1008b138
cmp al, 0x54
je 0x1008b138
cmp al, 0x55
je 0x1008b138
cmp al, 0x56
je 0x1008b138
cmp al, 0x57
jne 0x1008b1a0
mov al, byte [esi + edi + 2]
cmp al, 0x50
je 0x1008b15c
cmp al, 0x51
je 0x1008b15c
cmp al, 0x52
je 0x1008b15c
cmp al, 0x53
je 0x1008b15c
cmp al, 0x54
je 0x1008b15c
cmp al, 0x55
je 0x1008b15c
cmp al, 0x56
je 0x1008b15c
cmp al, 0x57
jne 0x1008b1a0
mov al, byte [esi + edi + 3]
cmp al, 0x50
je 0x1008b9b0
cmp al, 0x51
je 0x1008b9b0
cmp al, 0x52
je 0x1008b9b0
cmp al, 0x53
je 0x1008b9b0
cmp al, 0x54
je 0x1008b9b0
cmp al, 0x55
je 0x1008b9b0
cmp al, 0x56
je 0x1008b9b0
cmp al, 0x57
je 0x1008b9b0
cmp dl, 0x51
je 0x1008b1cc
cmp dl, 0x50
je 0x1008b1cc
cmp dl, 0x52
je 0x1008b1cc
cmp dl, 0x53
je 0x1008b1cc
cmp dl, 0x54
je 0x1008b1cc
cmp dl, 0x55
je 0x1008b1cc
cmp dl, 0x56
je 0x1008b1cc
cmp dl, 0x57
jne case.0x1008b0d7.16
mov al, byte [esi + edi + 1]
cmp al, 0x50
je 0x1008b1f0
cmp al, 0x51
je 0x1008b1f0
cmp al, 0x52
je 0x1008b1f0
cmp al, 0x53
je 0x1008b1f0
cmp al, 0x54
je 0x1008b1f0
cmp al, 0x55
je 0x1008b1f0
cmp al, 0x56
je 0x1008b1f0
cmp al, 0x57
jne case.0x1008b0d7.16
mov al, byte [esi + edi + 2]
cmp al, 0x50
je 0x1008b214
cmp al, 0x51
je 0x1008b214
cmp al, 0x52
je 0x1008b214
cmp al, 0x53
je 0x1008b214
cmp al, 0x54
je 0x1008b214
cmp al, 0x55
je 0x1008b214
cmp al, 0x56
je 0x1008b214
cmp al, 0x57
jne case.0x1008b0d7.16
mov al, byte [esi + edi + 3]
cmp al, 0x50
je case.0x1008b0d7.16
cmp al, 0x51
je case.0x1008b0d7.16
cmp al, 0x52
je case.0x1008b0d7.16
cmp al, 0x53
je case.0x1008b0d7.16
cmp al, 0x54
je case.0x1008b0d7.16
cmp al, 0x55
je case.0x1008b0d7.16
cmp al, 0x56
je case.0x1008b0d7.16
cmp al, 0x57
je case.0x1008b0d7.16
add esi, 3
mov byte [esp + 0x23], 1
push esi
lea ecx, [esp + 0x70]
mov dword [esp + 0x3c], 0
call fcn.1001d110
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dl, byte [esp + 0x13]
add esi, dword [esp + 0x38]
cmp esi, dword [esp + 0x58]
jb 0x1008b0a0
test dl, dl
je 0x1008bd14
mov edx, dword [esp + 0x4c]
imul ebx, eax
mov eax, dword [esp + 0x68]
sub ebx, dword [esp + 0x34]
sub ebx, dword [esp + 0x54]
add ebx, eax
add ebx, ecx
mov dword [esp + 0x14], ebx
cmp ebx, dword [edx + 4]
jae 0x1008bd14
cmp ebx, eax
jb 0x1008bd14
cmp ebx, dword [esp + 0x50]
ja 0x1008bd14
push 0x28
lea ecx, [esp + 0x60]
call fcn.100940a0
mov dword [esp + 0x2c0], 0
lea esi, [ebx + edi]
mov eax, dword [esp + 0x40]
mov ecx, 0xa
mov edi, dword [esp + 0x5c]
mov edx, eax
mov ebx, eax
shr edx, 8
shr ebx, 0x10
shr eax, 0x18
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x54], eax
mov ecx, 0xa
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0x40]
lea eax, [eax + 4]
xor byte [eax - 4], dl
mov edx, dword [esp + 0x50]
xor byte [eax - 3], dl
xor byte [eax - 2], bl
mov edx, dword [esp + 0x54]
xor byte [eax - 1], dl
dec ecx
jne 0x1008b2f0
xor ebx, ebx
mov dword [esp + 0x120], 0xb0540000
xor esi, esi
mov dword [esp + 0x40], ebx
xor edi, edi
mov dword [esp + 0x4c], esi
xor eax, eax
mov dword [esp + 0x38], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x34], eax
mov dword [esp + 0x124], 0xefda37
mov dword [esp + 0x128], 0xd1005031
mov dword [esp + 0x12c], 0x2b9ace7d
mov dword [esp + 0x130], 0xe2180000
mov dword [esp + 0x134], 0x463a
mov dword [esp + 0x138], 0x7f6d
mov dword [esp + 0x13c], 0x3ec3ec
mov dword [esp + 0x140], 0xee00
mov dword [esp + 0x144], 0x49000054
mov dword [esp + 0x260], 0xd9000e00
mov dword [esp + 0x264], 0x8a14
mov dword [esp + 0x268], 0xdc0036a9
mov dword [esp + 0x26c], 0xa72a
mov dword [esp + 0x270], 0x5af2
mov dword [esp + 0x274], 0x43006b
mov dword [esp + 0x278], 0xf5c0003e
mov dword [esp + 0x27c], 0x6000005b
mov dword [esp + 0x280], 0xc09d68a3
mov dword [esp + 0x284], 0x2c9f00
mov dword [esp + 0x170], 0x66bd4d00
mov dword [esp + 0x174], 0xfad72c00
mov dword [esp + 0x178], 0x728ef43e
mov dword [esp + 0x17c], 0x21600
mov dword [esp + 0x180], 0xb300df00
mov dword [esp + 0x184], 0xd30dc8
mov dword [esp + 0x188], 0x6400005b
mov dword [esp + 0x18c], 0x676a0000
mov dword [esp + 0x190], eax
mov dword [esp + 0x194], eax
mov dword [esp + 0x210], 0x5300aac9
mov dword [esp + 0x214], 0x7c006aa0
mov dword [esp + 0x218], 0xeb7f00fc
mov dword [esp + 0x21c], 0x112b7100
mov dword [esp + 0x220], 0x7a0000
mov dword [esp + 0x224], 0xe0006f00
mov dword [esp + 0x228], 0xda000046
mov dword [esp + 0x22c], 0x7984481f
mov dword [esp + 0x230], 0xfb0000
mov dword [esp + 0x234], 0xaf0000
mov dword [esp + 0x1c0], 0xe69dfdf
mov dword [esp + 0x1c4], 0x26e0d0d
mov dword [esp + 0x1c8], 0x132e00
mov dword [esp + 0x1cc], 0x8b9a0000
mov dword [esp + 0x1d0], 0x3399e0
mov dword [esp + 0x1d4], 0x51b66
mov dword [esp + 0x1d8], 0x19e91739
mov dword [esp + 0x1dc], 0xe20000
mov dword [esp + 0x1e0], 0x739f4
mov dword [esp + 0x1e4], 0xc13cba
mov dword [esp + 0xf8], 0x59be8938
mov dword [esp + 0xfc], 0x3254f1
mov dword [esp + 0x100], 0x2c36e511
mov dword [esp + 0x104], 0xc7cdfe46
mov dword [esp + 0x108], 0xbf30826b
mov dword [esp + 0x10c], 0xfd0008a8
mov dword [esp + 0x110], 0x6e7300
mov dword [esp + 0x114], 0xfd00e845
mov dword [esp + 0x118], 0x5cac
mov dword [esp + 0x11c], 0x14
mov dword [esp + 0x148], 0x64ca0000
mov dword [esp + 0x14c], 0xba0000
mov dword [esp + 0x150], 0x5c000085
mov dword [esp + 0x154], 0x43cd
mov dword [esp + 0x158], 0xfa0000e9
mov dword [esp + 0x15c], 0x95bd1a00
mov dword [esp + 0x160], 0x900e7
mov edx, dword [esp + 0x5c]
lea eax, [esp + 0xd0]
sub eax, edx
mov dword [esp + 0x164], 0x97000000
mov dword [esp + 0x54], eax
lea eax, [esp + 0x288]
sub eax, edx
mov dword [esp + 0x168], 0x7000008e
mov dword [esp + 0x16c], 0xa0396181
mov dword [esp + 0x198], 0x25647932
mov dword [esp + 0x19c], 0xe15a0000
mov dword [esp + 0x1a0], 0xb700dc00
mov dword [esp + 0x1a4], 0x7a646c59
mov dword [esp + 0x1a8], 0x42730020
mov dword [esp + 0x1ac], 0x3ca5007c
mov dword [esp + 0x1b0], 0xec859bba
mov dword [esp + 0x1b4], 0x15510000
mov dword [esp + 0x1b8], 0x32003700
mov dword [esp + 0x1bc], 0x100000
mov dword [esp + 0x1e8], 0xb07cd300
mov dword [esp + 0x1ec], 0x8e8a00
mov dword [esp + 0x1f0], 0x3900004a
mov dword [esp + 0x1f4], 0x3787f333
mov dword [esp + 0x1f8], 0xbc09b10c
mov dword [esp + 0x1fc], 0xf80000bd
mov dword [esp + 0x200], 0x8dbeff8
mov dword [esp + 0x204], 0x8200143a
mov dword [esp + 0x208], 0xf4007d
mov dword [esp + 0x20c], 0xd400222c
mov dword [esp + 0x238], 0xef0002f1
mov dword [esp + 0x23c], 0xb1f38917
mov dword [esp + 0x240], 0x45745777
mov dword [esp + 0x244], 0xe476004f
mov dword [esp + 0x248], 0x7a39005b
mov dword [esp + 0x24c], 0x6a2a00a0
mov dword [esp + 0x250], 0x845832
mov dword [esp + 0x254], 0x9b001c78
mov dword [esp + 0x258], 0x875f00
mov dword [esp + 0x25c], 0xb40000d1
mov dword [esp + 0xd0], 0xbe2100
mov dword [esp + 0xd4], 0x13ef35df
mov dword [esp + 0xd8], 0x9e00
mov dword [esp + 0xdc], 0x7800d138
mov dword [esp + 0xe0], 0xdc72007b
mov dword [esp + 0xe4], 0x5a0bddb8
mov dword [esp + 0xe8], 0x3ad30000
mov dword [esp + 0xec], 0x6ceab8f1
mov dword [esp + 0xf0], 0x2838e4
mov dword [esp + 0xf4], 0xc1b58857
mov dword [esp + 0x288], 0xbc20d913
mov dword [esp + 0x28c], 0xad0
mov dword [esp + 0x290], 1
mov dword [esp + 0x294], 0x4500e404
mov dword [esp + 0x298], 0xa900f5
mov dword [esp + 0x29c], 0xae000000
mov dword [esp + 0x2a0], 0x144b008c
mov dword [esp + 0x2a4], 0xb40600
mov dword [esp + 0x2a8], 0x9900
mov dword [esp + 0x2ac], 0x4cbe8e00
mov dword [esp + 0x58], eax
lea esp, [esp]
mov al, byte [edx]
cmp al, byte [esp + ecx + 0x120]
jne 0x1008b890
inc esi
mov dword [esp + 0x4c], esi
cmp al, byte [esp + ecx + 0x260]
jne 0x1008b89a
inc edi
cmp al, byte [esp + ecx + 0x170]
jne 0x1008b8a4
inc ebx
cmp al, byte [esp + ecx + 0x210]
jne 0x1008b8b1
inc dword [esp + 0x40]
cmp al, byte [esp + ecx + 0x1c0]
jne 0x1008b8be
inc dword [esp + 0x38]
cmp al, byte [esp + ecx + 0xf8]
jne 0x1008b8cb
inc dword [esp + 0x44]
cmp al, byte [esp + ecx + 0x148]
jne 0x1008b8d8
inc dword [esp + 0x3c]
cmp al, byte [esp + ecx + 0x198]
jne 0x1008b8e5
inc dword [esp + 0x30]
cmp al, byte [esp + ecx + 0x1e8]
jne 0x1008b8f2
inc dword [esp + 0x28]
cmp al, byte [esp + ecx + 0x238]
jne 0x1008b8ff
inc dword [esp + 0x18]
mov esi, dword [esp + 0x54]
cmp al, byte [esi + edx]
jne 0x1008b90c
inc dword [esp + 0x48]
mov esi, dword [esp + 0x58]
cmp al, byte [esi + edx]
mov esi, dword [esp + 0x4c]
mov eax, dword [esp + 0x34]
jne 0x1008b922
inc eax
mov dword [esp + 0x34], eax
inc ecx
inc edx
cmp ecx, 0x28
jb 0x1008b880
cmp esi, 0x28
je 0x1008bbc2
cmp edi, 0x28
je 0x1008bbf1
cmp ebx, 0x28
je 0x1008bbde
cmp dword [esp + 0x40], 0x28
je 0x1008bbde
cmp dword [esp + 0x38], 0x28
je 0x1008bbde
cmp dword [esp + 0x44], 0x28
je 0x1008bbde
cmp dword [esp + 0x3c], 0x28
je 0x1008bbde
cmp dword [esp + 0x30], 0x28
je 0x1008bbde
cmp dword [esp + 0x28], 0x28
je 0x1008bbde
cmp dword [esp + 0x18], 0x28
je 0x1008bbde
cmp dword [esp + 0x48], 0x28
je 0x1008bbde
cmp eax, 0x28
je 0x1008bbde
xor esi, esi
jmp 0x1008bce0
add esi, 4
jmp 0x1008b23b
mov ecx, dword [esp + 0x3c]
inc ecx
mov byte [esp + 0x20], 1
mov dword [esp + 0x3c], ecx
cmp ecx, 4
ja case.0x1008b0d7.16
cmp ecx, 1
jne 0x1008b9e1
mov ecx, dword [esi + edi + 1]
mov dword [esp + 0x30], ecx
jmp case.0x1008b0d7.16
cmp ecx, 2
jne 0x1008b9f3
mov eax, dword [esi + edi + 1]
mov dword [esp + 0x18], eax
jmp 0x1008b256
mov eax, dword [esp + 0x18]
cmp ecx, 3
jne 0x1008ba26
mov ecx, dword [esp + 0x30]
cmp eax, ecx
jbe 0x1008ba0a
mov eax, ecx
mov dword [esp + 0x18], eax
mov ecx, dword [esi + edi + 1]
mov dword [esp + 0x30], ecx
cmp eax, ecx
jbe 0x1008ba1c
mov eax, ecx
mov dword [esp + 0x18], eax
mov byte [esp + 0x22], 1
jmp 0x1008b256
mov dl, byte [esp + 0x13]
cmp ecx, 4
mov ecx, dword [esp + 0x14]
jne 0x1008b25e
mov ebx, dword [esi + edi + 1]
mov byte [esp + 0x21], 1
jmp 0x1008b25e
mov ecx, dword [esp + 0x3c]
inc ecx
mov dword [esp + 0x3c], ecx
cmp ecx, 4
ja case.0x1008b0d7.16
cmp ecx, 1
jne 0x1008ba69
mov eax, dword [esi + edi + 2]
mov dword [esp + 0x30], eax
jmp case.0x1008b0d7.16
cmp ecx, 2
jne 0x1008ba7b
mov eax, dword [esi + edi + 2]
mov dword [esp + 0x18], eax
jmp 0x1008b256
mov eax, dword [esp + 0x18]
cmp ecx, 3
jne 0x1008bab2
mov ecx, dword [esp + 0x30]
cmp eax, ecx
jbe 0x1008ba92
mov eax, ecx
mov dword [esp + 0x18], eax
mov ecx, dword [esi + edi + 2]
mov dword [esp + 0x30], ecx
cmp eax, ecx
jbe 0x1008ba1c
mov eax, ecx
mov byte [esp + 0x22], 1
mov dword [esp + 0x18], eax
jmp 0x1008b256
mov dl, byte [esp + 0x13]
cmp ecx, 4
mov ecx, dword [esp + 0x14]
jne 0x1008b25e
mov ebx, dword [esi + edi + 2]
mov byte [esp + 0x21], 1
jmp 0x1008b25e
cmp byte [esi + edi + 1], 0xaf
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dl, byte [esp + 0x13]
jne 0x1008b25e
mov byte [esp + 0x48], 1
jmp 0x1008b25e
mov ecx, dword [esp + 0x44]
inc ecx
mov dword [esp + 0x44], ecx
cmp ecx, 1
jne 0x1008bb11
mov ecx, dword [esi + edi + 2]
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x18]
jmp 0x1008b25a
cmp ecx, 2
mov ecx, dword [esp + 0x14]
jne 0x1008bb08
mov eax, dword [esi + edi + 2]
mov dl, 1
mov dword [esp + 0x40], eax
mov byte [esp + 0x13], dl
mov eax, dword [esp + 0x18]
jmp 0x1008b25e
mov dl, byte [esp + 0x13]
test dl, dl
jne 0x1008bd14
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x14]
inc eax
mov dword [esp + 0x44], eax
cmp eax, 2
jne 0x1008bb28
mov eax, dword [esi + edi + 1]
mov dl, 1
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x18]
mov byte [esp + 0x13], dl
jmp 0x1008b25e
cmp byte [esp + 0x20], 0
je 0x1008bd14
cmp byte [esp + 0x23], 0
je 0x1008bd14
cmp byte [esp + 0x22], 0
je 0x1008bd14
cmp byte [esp + 0x21], 0
je 0x1008bd14
cmp byte [esp + 0x48], 0
je 0x1008bd14
cmp dword [esp + 0x18], 0
je 0x1008bd14
mov eax, dword [esp + 0x14]
test eax, eax
je 0x1008bd14
mov eax, dword [esi + edi + 1]
add eax, 5
add esi, eax
jmp 0x1008b240
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea eax, [ecx - 0x551]
mov dword [esi], 0x151
mov dword [edx], eax
jmp 0x1008bbea
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
cmp edi, 0x28
jne 0x1008bc0b
jmp 0x1008bbfd
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x2c]
lea eax, [ecx - 0x547]
mov dword [esi], 0x147
mov dword [edx], eax
cmp ebx, 0x28
jne 0x1008bc1e
lea eax, [ecx - 0x53e]
mov dword [esi], 0x13e
mov dword [edx], eax
cmp dword [esp + 0x40], 0x28
jne 0x1008bc33
lea eax, [ecx - 0x559]
mov dword [esi], 0x159
mov dword [edx], eax
cmp dword [esp + 0x38], 0x28
jne 0x1008bc48
lea eax, [ecx - 0x542]
mov dword [esi], 0x142
mov dword [edx], eax
cmp dword [esp + 0x44], 0x28
jne 0x1008bc5d
lea eax, [ecx - 0x555]
mov dword [esi], 0x155
mov dword [edx], eax
cmp dword [esp + 0x3c], 0x28
jne 0x1008bc72
lea eax, [ecx - 0x533]
mov dword [esi], 0x133
mov dword [edx], eax
cmp dword [esp + 0x30], 0x28
jne 0x1008bc87
lea eax, [ecx - 0x53b]
mov dword [esi], 0x13b
mov dword [edx], eax
cmp dword [esp + 0x28], 0x28
jne 0x1008bc9c
lea eax, [ecx - 0x531]
mov dword [esi], 0x131
mov dword [edx], eax
cmp dword [esp + 0x18], 0x28
jne 0x1008bcb1
lea eax, [ecx - 0x549]
mov dword [esi], 0x149
mov dword [edx], eax
cmp dword [esp + 0x48], 0x28
jne 0x1008bcc6
lea eax, [ecx - 0x54c]
mov dword [esi], 0x14c
mov dword [edx], eax
cmp dword [esp + 0x34], 0x28
jne 0x1008bcdb
lea eax, [ecx - 0x552]
mov dword [esi], 0x152
mov dword [edx], eax
mov esi, 1
mov dword [esp + 0x2c0], 0xffffffff
push dword [esp + 0x5c]
call dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov eax, esi
mov dword [esp + 0x64], 0
jmp 0x1008bd16
xor eax, eax
mov ecx, dword [esp + 0x2b8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2a0]
xor ecx, esp
call fcn.100b37df
mov esp, ebp
pop ebp
ret