Function at 0x10004090
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10021658
mov eax, dword fs:[0]
push eax
sub esp, 0x1bc
mov eax, dword [0x1002f018]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x7c], 0x44204646
mov word [ebp - 0x78], 0x35
mov ecx, 0x103293f8
lea eax, [ebp - 0x110]
mov dword [ebp - 4], 0
call fcn.1001b200
lea esi, [ebp - 0x7c]
push esi
push 0
push 0
mov byte [ebp - 4], 1
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0
push 0
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov word [ebp - 0x108], ax
mov dword [ebp - 0x7c], eax
mov word [ebp - 0x78], ax
mov dword [ebp - 0x178], 0x44204646
mov word [ebp - 0x174], 0x35
mov dword [ebp - 4], 2
mov ecx, 7
jmp 0x10004140
mov dl, byte [eax + str.Flmxn]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x90], dl
jns 0x10004160
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0xf
jl 0x10004140
mov byte [ebp - 0x81], 0
lea edx, [ebp - 0x178]
push edx
push 0
push 0
mov byte [ebp - 4], 3
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0
push 0
lea edx, [ebp - 0x90]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x178], eax
mov word [ebp - 0x174], ax
mov ecx, 0x33
mov dl, byte [eax + 0x10027fb8]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x2c], dl
jns 0x100041dd
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x100041c0
mov byte [ebp - 0x14], 0
mov dword [ebp - 4], 4
mov ecx, 0x33
xor eax, eax
mov dl, byte [eax + str.lDc_ROH]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x114], dl
jns 0x10004215
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0xd
jl 0x100041f5
mov byte [ebp - 0x107], 0
push 1
lea edx, [ebp - 0x2c]
push edx
push 0
push 4
push 0x23
mov byte [ebp - 4], 5
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 2
push 8
lea edx, [ebp - 0x114]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov word [ebp - 0x108], ax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x14], al
mov ecx, 0x1f
nop
mov dl, byte [eax + 0x10027fe4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x70], dl
jns 0x1000429d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x35
jl 0x10004280
mov byte [ebp - 0x3b], 0
mov dword [ebp - 4], 6
mov ecx, 0x1f
xor eax, eax
mov dl, byte [eax + str._EBPZTQ_ba_GI_EB_]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x90], dl
jns 0x100042d5
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x10
jl 0x100042b5
mov byte [ebp - 0x80], 0
lea edx, [ebp - 0x70]
push edx
push 0
push 4
mov byte [ebp - 4], 7
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 5
push 8
lea edx, [ebp - 0x90]
push edx
call eax
mov dword [ebp - 4], 0xffffffff
call fcn.100034a0
mov ecx, 0xce
xor eax, eax
mov dl, byte [eax + 0x10028030]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x74], dl
jns 0x10004333
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x38
jl 0x10004316
mov byte [ebp - 0x3c], 0
mov dword [ebp - 4], 8
mov ecx, 0x32
xor eax, eax
jmp 0x10004350
mov dl, byte [eax + str._PPNvNXNZN]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x90], dl
jns 0x10004370
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x10
jl 0x10004350
mov byte [ebp - 0x80], 0
lea edx, [ebp - 0x74]
push edx
push 0
push 4
mov byte [ebp - 4], 9
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 2
push 8
lea edx, [ebp - 0x90]
push edx
call eax
xor eax, eax
push 0x39
push eax
lea ecx, [ebp - 0x74]
push ecx
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov byte [ebp - 0x80], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 3
xor eax, eax
mov dl, byte [eax + str.B5_98_6532.0_1Q4R7:__]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x170], dl
jns 0x100043f1
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x3b
jl 0x100043d1
mov byte [ebp - 0x135], 0
mov dword [ebp - 4], 0xa
mov ecx, 0x32
xor eax, eax
lea esp, [esp]
mov dl, byte [eax + 0x100280bc]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x118], dl
jns 0x10004430
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x14
jl 0x10004410
mov byte [ebp - 0x104], 0
lea edx, [ebp - 0x170]
push edx
push 0
push 4
mov byte [ebp - 4], 0xb
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 1
push 8
lea edx, [ebp - 0x118]
push edx
call eax
xor eax, eax
push 0x3c
push eax
lea ecx, [ebp - 0x170]
push ecx
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], eax
mov byte [ebp - 0x104], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0x1e
xor eax, eax
mov dl, byte [eax + 0x100280d4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0xd4], dl
jns 0x100044c3
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x19
jl 0x100044a3
mov byte [ebp - 0xbb], 0
mov dword [ebp - 4], 0xc
mov ecx, 0x7b
xor eax, eax
mov edi, edi
mov dl, byte [eax + 0x100280f0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x5c], dl
jns 0x100044fd
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x22
jl 0x100044e0
mov byte [ebp - 0x3a], 0
lea edx, [ebp - 0xd4]
push edx
push 0
push 4
mov byte [ebp - 4], 0xd
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0xb
push 8
lea edx, [ebp - 0x5c]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov word [ebp - 0x3c], ax
mov byte [ebp - 0x3a], al
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov word [ebp - 0xbc], ax
mov ecx, 0x7b
lea esp, [esp]
mov dl, byte [eax + 0x100280f0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x158], dl
jns 0x100045a0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x22
jl 0x10004580
mov byte [ebp - 0x136], 0
mov dword [ebp - 4], 0xe
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [ebp - 0x158]
push edx
call eax
cmp eax, 0x478dff
seta al
mov edi, 0x101e8ceb
lea esi, [ebp - 0xd4]
test al, al
je 0x10004608
call fcn.1001b280
mov ebx, eax
mov edi, 0x10079049
lea esi, [ebp - 0x154]
mov dword [ebp - 4], 0xf
call fcn.1001b2c0
push ebx
push 0
mov byte [ebp - 4], 0x10
push 1
jmp 0x1000462f
call fcn.1001b280
mov ebx, eax
mov edi, 0x10079049
lea esi, [ebp - 0x154]
mov dword [ebp - 4], 0x11
call fcn.1001b2c0
push ebx
push 0
mov byte [ebp - 4], 0x12
push 4
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0xb
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov ecx, 0x7e
xor eax, eax
jmp 0x10004650
mov dl, byte [eax + 0x10028134]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x60], dl
jns 0x1000466d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x27
jl 0x10004650
mov byte [ebp - 0x39], 0
mov ecx, 0x101f9b70
lea eax, [ebp - 0x110]
mov dword [ebp - 4], 0x13
call fcn.1001b300
push 1
lea esi, [ebp - 0x60]
push esi
push 0
push 4
push 8
mov byte [ebp - 4], 0x14
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0
push 6
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov word [ebp - 0x108], ax
mov byte [ebp - 0x106], al
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov ecx, 0x7e
mov edi, edi
mov dl, byte [eax + 0x10028168]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0xe4], dl
jns 0x10004710
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x28
jl 0x100046f0
mov byte [ebp - 0xbc], 0
mov dword [ebp - 4], 0x15
mov ecx, 0xeb
xor eax, eax
jmp 0x10004730
mov dl, byte [eax + 0x10028194]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x160], dl
jns 0x10004750
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x29
jl 0x10004730
mov byte [ebp - 0x137], 0
lea edx, [ebp - 0xe4]
push edx
push 0
push 4
mov byte [ebp - 4], 0x16
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 4
push 8
lea edx, [ebp - 0x160]
push edx
call eax
push 0x2a
lea ecx, [ebp - 0x160]
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
push 0x29
lea edx, [ebp - 0xe4]
push 0
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0xb1
xor eax, eax
mov dl, byte [eax + 0x100281c0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x58], dl
jns 0x100047ce
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1f
jl 0x100047b1
mov byte [ebp - 0x39], 0
mov dword [ebp - 4], 0x17
mov ecx, 0xcb
xor eax, eax
mov dl, byte [eax + 0x100281e0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x114], dl
jns 0x10004806
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0xe
jl 0x100047e6
mov byte [ebp - 0x106], 0
push 1
lea edx, [ebp - 0x58]
push edx
push 0
push 4
push 0xffffffffffffffc1
mov byte [ebp - 4], 0x18
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 2
push 8
lea edx, [ebp - 0x114]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov word [ebp - 0x108], ax
mov byte [ebp - 0x106], al
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov ecx, 0xfa
lea esp, [esp]
mov dl, byte [eax + 0x100281f0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x28], dl
jns 0x1000489d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10004880
mov byte [ebp - 0x12], 0
mov dword [ebp - 4], 0x19
mov ecx, 0xfa
xor eax, eax
mov dl, byte [eax + 0x10028208]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x90], dl
jns 0x100048d5
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0xe
jl 0x100048b5
mov byte [ebp - 0x82], 0
lea edx, [ebp - 0x28]
push edx
push 0
push 4
mov byte [ebp - 4], 0x1a
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 1
push 8
lea edx, [ebp - 0x90]
push edx
call eax
mov ecx, 0x29
xor eax, eax
lea ecx, [ecx]
mov dl, byte [eax + 0x10028218]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x94], dl
jns 0x10004930
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x14
jl 0x10004910
mov byte [ebp - 0x80], 0
mov dword [ebp - 4], 0x1b
mov eax, dword [0x10162608]
mov esi, dword [eax]
call fcn.100163d0
mov edx, dword [esi + 0xc]
push eax
push 0
push 0
push 0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, dword [0x10162608]
call edx
xor eax, eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov byte [ebp - 0x80], al
mov ecx, 0x6c
mov edi, edi
mov dl, byte [eax + str.YXNW2Q70T_GWMHZNO_KI]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x68], dl
jns 0x100049ad
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x2c
jl 0x10004990
mov byte [ebp - 0x3c], 0
mov dword [ebp - 4], 0x1c
mov ecx, 0x6c
xor eax, eax
mov dl, byte [eax + 0x10028260]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x2c], dl
jns 0x100049e2
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x100049c5
mov byte [ebp - 0x14], 0
lea edx, [ebp - 0x68]
push edx
push 0
push 0
mov byte [ebp - 4], 0x1d
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0
push 0
lea edx, [ebp - 0x2c]
push edx
call eax
xor eax, eax
push 0x2d
push eax
lea ecx, [ebp - 0x68]
push ecx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x14], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0xcb
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x1002827c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x170], dl
jns 0x10004a60
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x3b
jl 0x10004a40
mov byte [ebp - 0x135], 0
mov dword [ebp - 4], 0x1e
mov ecx, 0x87
xor eax, eax
jmp 0x10004a80
mov dl, byte [eax + 0x100282b8]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0xd4], dl
jns 0x10004aa0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10004a80
mov byte [ebp - 0xb9], 0
lea edx, [ebp - 0x170]
push edx
push 0
push 4
mov byte [ebp - 4], 0x1f
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 8
push 8
lea edx, [ebp - 0xd4]
push edx
call eax
xor eax, eax
push 0x3c
push eax
lea ecx, [ebp - 0x170]
push ecx
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0x3b
xor eax, eax
lea esp, [esp]
mov dl, byte [eax + 0x100282d4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x70], dl
jns 0x10004b3d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x35
jl 0x10004b20
mov byte [ebp - 0x3b], 0
mov dword [ebp - 4], 0x20
mov ecx, 0x65
xor eax, eax
mov dl, byte [eax + 0x1002830c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x2c], dl
jns 0x10004b72
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x10004b55
mov byte [ebp - 0x14], 0
lea edx, [ebp - 0x70]
push edx
push 0
push 0
mov byte [ebp - 4], 0x21
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 7
push 2
lea edx, [ebp - 0x2c]
push edx
call eax
xor eax, eax
push 0x36
push eax
lea ecx, [ebp - 0x70]
push ecx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x14], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0x65
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x1002830c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x98], dl
jns 0x10004bf0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x10004bd0
mov byte [ebp - 0x80], 0
mov dword [ebp - 4], 0x22
mov ecx, 0xd
xor eax, eax
jmp 0x10004c10
mov dl, byte [eax + str.H_kBtwqgFxqwnn3HLHFBPLII]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0xd4], dl
jns 0x10004c30
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10004c10
mov byte [ebp - 0xb9], 0
mov byte [ebp - 4], 0x23
mov ecx, dword [0x10162608]
mov esi, dword [ecx]
mov eax, dword [esi + 0x28]
lea edx, [ebp - 0x98]
push edx
call eax
mov edx, dword [esi + 0xc]
push eax
push 4
push 2
push 8
lea ecx, [ebp - 0xd4]
push ecx
mov ecx, dword [0x10162608]
call edx
xor eax, eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov byte [ebp - 0x80], al
mov ecx, 0xd
mov dl, byte [eax + str.H_kBtwqgFxqwnn3HLHFBPLII]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x150], dl
jns 0x10004ce6
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10004cc6
mov byte [ebp - 0x135], 0
mov dword [ebp - 4], 0x24
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [ebp - 0x150]
push edx
call eax
cmp eax, 0xcccc
seta al
mov edi, 0x1033983b
test al, al
je 0x10004dc3
lea esi, [ebp - 0x150]
call fcn.1001b3d0
mov ebx, eax
mov edi, 0x100ea580
lea esi, [ebp - 0x98]
mov dword [ebp - 4], 0x25
call fcn.1001b410
mov esi, eax
mov byte [ebp - 4], 0x26
mov ecx, dword [0x10162608]
mov edi, dword [ecx]
mov eax, dword [edi + 0x28]
push ebx
call eax
mov ecx, dword [0x10162608]
mov edx, dword [edi + 0xc]
push eax
push 1
push 2
push 8
push esi
call edx
xor eax, eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov byte [ebp - 0x138], al
jmp 0x10004e5e
lea esi, [ebp - 0xd4]
call fcn.1001b3d0
mov ebx, eax
mov edi, 0x100ea580
lea esi, [ebp - 0x11c]
mov dword [ebp - 4], 0x27
call fcn.1001b410
mov esi, eax
mov byte [ebp - 4], 0x28
mov ecx, dword [0x10162608]
mov edi, dword [ecx]
mov edx, dword [edi + 0x28]
push ebx
call edx
mov ecx, dword [0x10162608]
push eax
mov eax, dword [edi + 0xc]
push 4
push 2
push 8
push esi
call eax
xor eax, eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov byte [ebp - 0xbc], al
mov ecx, 0x65
xor eax, eax
mov dl, byte [eax + 0x1002835c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x58], dl
jns 0x10004e82
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1e
jl 0x10004e65
mov byte [ebp - 0x3a], 0
mov dword [ebp - 4], 0x29
mov ecx, 0x45
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x1002837c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x28], dl
jns 0x10004ebd
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10004ea0
mov byte [ebp - 0x12], 0
push 1
lea edx, [ebp - 0x58]
push edx
push 0
push 4
push 0x8d
mov byte [ebp - 4], 0x2a
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [ebp - 0x28]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov word [ebp - 0x14], ax
mov byte [ebp - 0x12], al
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov word [ebp - 0x3c], ax
mov byte [ebp - 0x3a], al
mov ecx, 0x45
jmp 0x10004f30
mov dl, byte [eax + 0x1002837c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x98], dl
jns 0x10004f50
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10004f30
mov byte [ebp - 0x82], 0
mov dword [ebp - 4], 0x2b
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [ebp - 0x98]
push edx
call eax
cmp eax, 0x1000
seta al
mov edi, 0x1030b0b3
test al, al
je 0x1000501e
lea esi, [ebp - 0x58]
call fcn.1001b450
mov ebx, eax
mov edi, 0x1030b0eb
lea esi, [ebp - 0xd4]
mov dword [ebp - 4], 0x2c
call fcn.1001b490
push 1
push ebx
push 0
push 1
push 0x8d
mov byte [ebp - 4], 0x2d
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov word [ebp - 0xbc], ax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov word [ebp - 0x3c], ax
mov byte [ebp - 0x3a], al
jmp 0x100050c8
lea esi, [ebp - 0xa0]
call fcn.1001b450
mov ebx, eax
mov edi, 0x1030b0eb
lea esi, [ebp - 0x150]
mov dword [ebp - 4], 0x2e
call fcn.1001b490
push 1
push ebx
push 0
push 4
push 0x8d
mov byte [ebp - 4], 0x2f
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov word [ebp - 0x138], ax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov word [ebp - 0x84], ax
mov byte [ebp - 0x82], al
mov ecx, 0x3c
xor eax, eax
nop
mov dl, byte [eax + 0x100283b0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x124], dl
jns 0x100050f0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x20
jl 0x100050d0
mov byte [ebp - 0x104], 0
mov dword [ebp - 4], 0x30
mov ecx, 0xdb
xor eax, eax
jmp 0x10005110
mov dl, byte [eax + 0x100283d4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x28], dl
jns 0x1000512d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10005110
mov byte [ebp - 0x12], 0
lea edx, [ebp - 0x124]
push edx
push 0
push 4
mov byte [ebp - 4], 0x31
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0xfffffffffffffffc
push 8
lea edx, [ebp - 0x28]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov word [ebp - 0x14], ax
mov byte [ebp - 0x12], al
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], eax
mov byte [ebp - 0x104], al
mov ecx, 0xdb
mov edi, edi
mov dl, byte [eax + 0x100283d4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x98], dl
jns 0x100051d0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x100051b0
mov byte [ebp - 0x82], 0
mov dword [ebp - 4], 0x32
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [ebp - 0x98]
push edx
call eax
cmp eax, 0x10000
seta al
mov edi, 0x1008a914
test al, al
je 0x10005296
lea esi, [ebp - 0x5c]
call fcn.1001b4d0
mov ebx, eax
mov edi, 0x1008a950
lea esi, [ebp - 0xd4]
mov dword [ebp - 4], 0x33
call fcn.1001b510
push ebx
push 0
push 1
mov byte [ebp - 4], 0x34
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0xffffffffffffffff
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov word [ebp - 0xbc], ax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], al
jmp 0x10005338
lea esi, [ebp - 0x124]
call fcn.1001b4d0
mov ebx, eax
mov edi, 0x1008a950
lea esi, [ebp - 0x150]
mov dword [ebp - 4], 0x35
call fcn.1001b510
push ebx
push 0
push 4
mov byte [ebp - 4], 0x36
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0xfffffffffffffffc
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov word [ebp - 0x138], ax
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], eax
mov byte [ebp - 0x104], al
mov ecx, 0xe4
xor eax, eax
nop
mov dl, byte [eax + 0x10028408]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x98], dl
jns 0x10005360
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x10005340
mov byte [ebp - 0x80], 0
mov dword [ebp - 4], 0x37
mov ecx, 0x7f
xor eax, eax
jmp 0x10005380
mov dl, byte [eax + 0x10028424]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x28], dl
jns 0x1000539d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10005380
mov byte [ebp - 0x12], 0
push 1
lea edx, [ebp - 0x98]
push edx
push 0
push 4
push 0x8e
mov byte [ebp - 4], 0x38
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [ebp - 0x28]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov word [ebp - 0x14], ax
mov byte [ebp - 0x12], al
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov byte [ebp - 0x80], al
mov ecx, 0xfa
mov dl, byte [eax + 0x1002843c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x5c], dl
jns 0x10005433
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x21
jl 0x10005416
mov byte [ebp - 0x3b], 0
mov dword [ebp - 4], 0x39
mov ecx, 0x19
xor eax, eax
jmp 0x10005450
mov dl, byte [eax + 0x10028460]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0xd4], dl
jns 0x10005470
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x19
jl 0x10005450
mov byte [ebp - 0xbb], 0
push 1
lea edx, [ebp - 0x5c]
push edx
push 0
push 4
push 0xa6
mov byte [ebp - 4], 0x3a
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [ebp - 0xd4]
push edx
call eax
xor eax, eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov word [ebp - 0xbc], ax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov word [ebp - 0x3c], ax
mov ecx, 0x19
mov dl, byte [eax + 0x10028460]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x150], dl
jns 0x10005516
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x19
jl 0x100054f6
mov byte [ebp - 0x137], 0
mov dword [ebp - 4], 0x3b
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [ebp - 0x150]
push edx
call eax
cmp eax, 0x100000
seta al
mov edi, 0x102c945e
test al, al
je 0x100055ef
lea esi, [ebp - 0x5c]
call fcn.1001b550
mov ebx, eax
mov edi, 0x1002847c
sub edi, 0x16440e0f
lea esi, [ebp - 0xd8]
mov dword [ebp - 4], 0x3c
call fcn.1001b590
push 1
push ebx
push 0
push 1
push 0xa6
mov byte [ebp - 4], 0x3d
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov byte [ebp - 0xbc], al
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov word [ebp - 0x3c], ax
jmp 0x10005686
lea esi, [ebp - 0x34]
call fcn.1001b550
mov ebx, eax
mov edi, 0x1002847c
sub edi, 0x16440e0f
lea esi, [ebp - 0x154]
mov dword [ebp - 4], 0x3e
call fcn.1001b590
push 1
push ebx
push 0
push 4
push 0xa6
mov byte [ebp - 4], 0x3f
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov byte [ebp - 0x138], al
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov word [ebp - 0x14], ax
mov ecx, 0xf7
xor eax, eax
lea ecx, [ecx]
mov dl, byte [eax + 0x1002849c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x130], dl
jns 0x100056b0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x2c
jl 0x10005690
mov byte [ebp - 0x104], 0
mov dword [ebp - 4], 0x40
mov ecx, 0xf7
xor eax, eax
jmp 0x100056d0
mov dl, byte [eax + 0x100284cc]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x98], dl
jns 0x100056f0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x100056d0
mov byte [ebp - 0x82], 0
lea edx, [ebp - 0x130]
push edx
push 0
push 4
mov byte [ebp - 4], 0x41
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 2
push 8
lea edx, [ebp - 0x98]
push edx
call eax
xor eax, eax
push 0x2d
push eax
lea ecx, [ebp - 0x130]
push ecx
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov word [ebp - 0x84], ax
mov byte [ebp - 0x82], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0xb0
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x100284e8]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x1c8], dl
jns 0x10005790
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x47
jl 0x10005770
mov byte [ebp - 0x181], 0
mov dword [ebp - 4], 0x42
mov ecx, 0x7d
xor eax, eax
jmp 0x100057b0
mov dl, byte [eax + 0x10028530]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x28], dl
jns 0x100057cd
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x14
jl 0x100057b0
mov byte [ebp - 0x14], 0
lea edx, [ebp - 0x1c8]
push edx
push 0
push 4
mov byte [ebp - 4], 0x43
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0x14
push 8
lea edx, [ebp - 0x28]
push edx
call eax
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0x7d
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x10028530]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x28], dl
jns 0x1000582d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x14
jl 0x10005810
mov byte [ebp - 0x14], 0
mov dword [ebp - 4], 0x44
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [ebp - 0x28]
push edx
call eax
cmp eax, 0x48b41
seta al
mov edi, 0x10178f2c
test al, al
je 0x100058cd
lea esi, [ebp - 0x1c8]
call fcn.1001b5d0
mov ebx, eax
mov edi, 0x4cde2bfb
lea esi, [ebp - 0x98]
mov dword [ebp - 4], 0x45
call fcn.1001b610
push ebx
push 0
push 1
mov byte [ebp - 4], 0x46
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0x14
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
lea ecx, [ebp - 0x1c8]
jmp 0x10005938
lea esi, [ebp - 0x100]
call fcn.1001b5d0
mov ebx, eax
mov edi, 0x4cde2bfb
lea esi, [ebp - 0x11c]
mov dword [ebp - 4], 0x47
call fcn.1001b610
push ebx
push 0
push 4
mov byte [ebp - 4], 0x48
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0x14
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], eax
lea ecx, [ebp - 0x100]
push 0x48
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0x72
xor eax, eax
lea esp, [esp]
mov dl, byte [eax + str.GFTM4W:ZC__N]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x5c], dl
jns 0x1000596d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x20
jl 0x10005950
mov byte [ebp - 0x3c], 0
mov dword [ebp - 4], 0x49
mov ecx, 0xb0
xor eax, eax
mov dl, byte [eax + 0x10028584]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x28], dl
jns 0x100059a2
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10005985
mov byte [ebp - 0x12], 0
lea edx, [ebp - 0x5c]
push edx
push 0
push 4
mov byte [ebp - 4], 0x4a
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0x10
push 8
lea edx, [ebp - 0x28]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov word [ebp - 0x14], ax
mov byte [ebp - 0x12], al
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], al
mov ecx, 0xb0
mov dl, byte [eax + 0x10028584]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x98], dl
jns 0x10005a25
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10005a05
mov byte [ebp - 0x82], 0
mov dword [ebp - 4], 0x4b
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [ebp - 0x98]
push edx
call eax
cmp eax, 0x10000
seta al
mov edi, 0x100a8fc4
lea esi, [ebp - 0x5c]
test al, al
je 0x10005b5a
call fcn.1001b650
mov ebx, eax
mov edi, 0x349bc3a8
lea esi, [ebp - 0xd4]
mov dword [ebp - 4], 0x4c
call fcn.1001b690
push ebx
push 0
push 1
mov byte [ebp - 4], 0x4d
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0x10
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov edi, 0x100a8fc4
lea esi, [ebp - 0x5c]
call fcn.1001b650
mov ebx, eax
mov edi, 0x101293f7
lea esi, [ebp - 0xdc]
mov dword [ebp - 4], 0x4e
call fcn.1001b6d0
push ebx
push 0
push 1
mov byte [ebp - 4], 0x4f
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0x1b
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov edi, 0x100a8fc4
lea esi, [ebp - 0x34]
call fcn.1001b650
mov ebx, eax
mov edi, 0x1012941b
lea esi, [ebp - 0x5c]
mov dword [ebp - 4], 0x50
call fcn.1001b6d0
push ebx
push 0
push 1
mov byte [ebp - 4], 0x51
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0x1e
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], al
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x14], al
jmp 0x10005c83
call fcn.1001b650
mov ebx, eax
mov edi, 0x349bc3a8
lea esi, [ebp - 0xd4]
mov dword [ebp - 4], 0x52
call fcn.1001b690
push ebx
push 0
push 4
mov byte [ebp - 4], 0x53
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0x10
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov edi, 0x100a8fc4
lea esi, [ebp - 0x5c]
call fcn.1001b650
mov ebx, eax
mov edi, 0x101293f7
lea esi, [ebp - 0xdc]
mov dword [ebp - 4], 0x54
call fcn.1001b6d0
push ebx
push 0
push 1
mov byte [ebp - 4], 0x55
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0x1e
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov edi, 0x100a8fc4
lea esi, [ebp - 0x124]
call fcn.1001b650
mov ebx, eax
mov edi, 0x1012941b
lea esi, [ebp - 0xa0]
mov dword [ebp - 4], 0x56
call fcn.1001b6d0
push ebx
push 0
push 1
mov byte [ebp - 4], 0x57
mov ecx, dword [0x10162608]
mov edx, dword [ecx]
push 0x21
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov byte [ebp - 0x80], al
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], eax
mov byte [ebp - 0x104], al
mov ecx, 0x58
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x10028600]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0xd4], dl
jns 0x10005cb0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x19
jl 0x10005c90
mov byte [ebp - 0xbb], 0
mov dword [ebp - 4], 0x58
mov ecx, 0x58
xor eax, eax
jmp 0x10005cd0
mov dl, byte [eax + 0x1002861c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x150], dl
jns 0x10005cf0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10005cd0
mov byte [ebp - 0x135], 0
push 1
lea edx, [ebp - 0xd4]
push edx
push 0
push 4
push 0xffffffffffffffba
mov byte [ebp - 4], 0x59
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [ebp - 0x150]
push edx
call eax
xor eax, eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov word [ebp - 0xbc], ax
mov ecx, 0x58
mov dl, byte [eax + 0x10028638]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x58], dl
jns 0x10005da1
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1e
jl 0x10005d84
mov byte [ebp - 0x3a], 0
mov dword [ebp - 4], 0x5a
mov ecx, 0x58
xor eax, eax
lea esp, [esp]
mov dl, byte [eax + 0x10028658]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0xa0], dl
jns 0x10005de0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x20
jl 0x10005dc0
mov byte [ebp - 0x80], 0
push 1
lea edx, [ebp - 0x58]
push edx
push 0
push 4
push 0xffffffffffffffba
mov byte [ebp - 4], 0x5b
mov ecx, dword [0x10162608]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [ebp - 0xa0]
push edx
call eax
xor eax, eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov byte [ebp - 0x80], al
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov word [ebp - 0x3c], ax
mov byte [ebp - 0x3a], al
mov ecx, 0x58
jmp 0x10005e70
mov dl, byte [eax + 0x1002867c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0xd4], dl
jns 0x10005e90
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10005e70
mov byte [ebp - 0xb9], 0
mov dword [ebp - 4], 0x5c
mov ecx, 0x58
xor eax, eax
jmp 0x10005eb0
mov dl, byte [eax + 0x10028698]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x30], dl
jns 0x10005ecd