Function at 0x10003fd0
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1001f546
mov eax, dword fs:[0]
push eax
sub esp, 0x1c0
mov eax, dword [0x1002b018]
xor eax, esp
mov dword [esp + 0x1b8], eax
push ebx
push esi
push edi
mov eax, dword [0x1002b018]
xor eax, esp
push eax
lea eax, [esp + 0x1d0]
mov dword fs:[0], eax
mov dword [esp + 0x74], 0x44204646
mov word [esp + 0x78], 0x35
mov ecx, 0x10325240
lea eax, [esp + 0xfc]
mov dword [esp + 0x1d8], 0
call fcn.10019f00
lea esi, [esp + 0x74]
push esi
push 0
push 0
mov byte [esp + 0x1e4], 1
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0
push 0
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov word [esp + 0x104], ax
mov dword [esp + 0x74], eax
mov word [esp + 0x78], ax
mov dword [esp + 0x16c], 0x44204646
mov word [esp + 0x170], 0x35
mov dword [esp + 0x1d8], 2
mov ecx, 7
mov dl, byte [eax + str.Flmxn]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x100040c1
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0xf
jl 0x100040a4
mov byte [esp + 0x8b], 0
lea edx, [esp + 0x16c]
push edx
push 0
push 0
mov byte [esp + 0x1e4], 3
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0
push 0
lea edx, [esp + 0x90]
push edx
call eax
xor eax, eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x16c], eax
mov word [esp + 0x170], ax
mov ecx, 0x33
jmp 0x10004130
mov dl, byte [eax + 0x10023e00]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x1000414d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x10004130
mov byte [esp + 0x28], 0
mov dword [esp + 0x1d8], 4
mov ecx, 0x33
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + str.lDc_ROH]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xfc], dl
jns 0x10004190
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0xd
jl 0x10004170
mov byte [esp + 0x109], 0
push 1
lea edx, [esp + 0x14]
push edx
push 0
push 4
push 0x23
mov byte [esp + 0x1ec], 5
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 2
push 8
lea edx, [esp + 0x118]
push edx
call eax
xor eax, eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
mov word [esp + 0x108], ax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov byte [esp + 0x28], al
mov ecx, 0x1f
lea esp, [esp]
mov dl, byte [eax + 0x10023e2c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x1000422d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x35
jl 0x10004210
mov byte [esp + 0x6d], 0
mov dword [esp + 0x1d8], 6
mov ecx, 0x1f
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + str._EBPZTQ_ba_GI_EB_]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x1000426d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x10
jl 0x10004250
mov byte [esp + 0x8c], 0
lea edx, [esp + 0x38]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 7
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 5
push 8
lea edx, [esp + 0x90]
push edx
call eax
mov dword [esp + 0x1d8], 0xffffffff
call fcn.100033d0
mov ecx, 0xce
xor eax, eax
lea esp, [esp]
mov dl, byte [eax + 0x10023e78]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x100042dd
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x38
jl 0x100042c0
mov byte [esp + 0x70], 0
mov dword [esp + 0x1d8], 8
mov ecx, 0x32
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + str._PPNvNXNZN]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x1000431d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x10
jl 0x10004300
mov byte [esp + 0x8c], 0
lea edx, [esp + 0x38]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 9
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 2
push 8
lea edx, [esp + 0x90]
push edx
call eax
xor eax, eax
push 0x39
push eax
lea ecx, [esp + 0x40]
push ecx
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov byte [esp + 0x98], 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 [esp + eax + 0x130], dl
jns 0x100043b1
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x3b
jl 0x10004391
mov byte [esp + 0x16b], 0
mov dword [esp + 0x1d8], 0xa
mov ecx, 0x32
xor eax, eax
mov dl, byte [eax + 0x10023f04]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xfc], dl
jns 0x100043f1
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x14
jl 0x100043d1
mov byte [esp + 0x110], 0
lea edx, [esp + 0x130]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0xb
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 1
push 8
lea edx, [esp + 0x110]
push edx
call eax
xor eax, eax
push 0x3c
push eax
lea ecx, [esp + 0x138]
push ecx
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], eax
mov byte [esp + 0x11c], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0x1e
xor eax, eax
mov dl, byte [eax + 0x10023f1c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xb4], dl
jns 0x10004492
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x19
jl 0x10004472
mov byte [esp + 0xcd], 0
mov dword [esp + 0x1d8], 0xc
mov ecx, 0x7b
xor eax, eax
mov dl, byte [eax + 0x10023f38]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x100044cf
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x22
jl 0x100044b2
mov byte [esp + 0x5a], 0
lea edx, [esp + 0xb4]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0xd
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0xb
push 8
lea edx, [esp + 0x4c]
push edx
call eax
xor eax, eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov word [esp + 0x58], ax
mov byte [esp + 0x5a], al
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov word [esp + 0xcc], ax
mov ecx, 0x7b
mov dl, byte [eax + 0x10023f38]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x130], dl
jns 0x10004586
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x22
jl 0x10004566
mov byte [esp + 0x152], 0
mov dword [esp + 0x1d8], 0xe
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [esp + 0x130]
push edx
call eax
cmp eax, 0x478dff
seta al
mov edi, 0x101e4b33
lea esi, [esp + 0xb4]
test al, al
je 0x100045fe
call fcn.10019f80
mov ebx, eax
mov edi, 0x10074e91
lea esi, [esp + 0x130]
mov dword [esp + 0x1d8], 0xf
call fcn.10019fc0
push ebx
push 0
mov byte [esp + 0x1e0], 0x10
push 1
jmp 0x1000462e
call fcn.10019f80
mov ebx, eax
mov edi, 0x10074e91
lea esi, [esp + 0x130]
mov dword [esp + 0x1d8], 0x11
call fcn.10019fc0
push ebx
push 0
mov byte [esp + 0x1e0], 0x12
push 4
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0xb
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov ecx, 0x7e
xor eax, eax
mov dl, byte [eax + 0x10023f7c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x10004664
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x27
jl 0x10004647
mov byte [esp + 0x5f], 0
mov ecx, 0x101f59b8
lea eax, [esp + 0xfc]
mov dword [esp + 0x1d8], 0x13
call fcn.1001a000
push 1
lea esi, [esp + 0x3c]
push esi
push 0
push 4
push 8
mov byte [esp + 0x1ec], 0x14
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0
push 6
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov word [esp + 0x104], ax
mov byte [esp + 0x106], al
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov ecx, 0x7e
mov edi, edi
mov dl, byte [eax + 0x10023fb0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xb4], dl
jns 0x10004720
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x28
jl 0x10004700
mov byte [esp + 0xdc], 0
mov dword [esp + 0x1d8], 0x15
mov ecx, 0xeb
xor eax, eax
mov dl, byte [eax + 0x10023fdc]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x130], dl
jns 0x10004760
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x29
jl 0x10004740
mov byte [esp + 0x159], 0
lea edx, [esp + 0xb4]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0x16
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 4
push 8
lea edx, [esp + 0x144]
push edx
call eax
push 0x2a
lea ecx, [esp + 0x134]
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
push 0x29
lea edx, [esp + 0xb8]
push 0
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0xb1
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x10024008]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x100047ed
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1f
jl 0x100047d0
mov byte [esp + 0x57], 0
mov dword [esp + 0x1d8], 0x17
mov ecx, 0xcb
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x10024028]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xfc], dl
jns 0x10004830
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0xe
jl 0x10004810
mov byte [esp + 0x10a], 0
push 1
lea edx, [esp + 0x3c]
push edx
push 0
push 4
push 0xffffffffffffffc1
mov byte [esp + 0x1ec], 0x18
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 2
push 8
lea edx, [esp + 0x118]
push edx
call eax
xor eax, eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
mov word [esp + 0x108], ax
mov byte [esp + 0x10a], al
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov ecx, 0xfa
mov dl, byte [eax + 0x10024038]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x100048d4
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x100048b7
mov byte [esp + 0x26], 0
mov dword [esp + 0x1d8], 0x19
mov ecx, 0xfa
xor eax, eax
mov dl, byte [eax + 0x10024050]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x1000490e
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0xe
jl 0x100048f1
mov byte [esp + 0x8a], 0
lea edx, [esp + 0x10]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0x1a
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 1
push 8
lea edx, [esp + 0x90]
push edx
call eax
mov ecx, 0x29
xor eax, eax
lea ecx, [ecx]
mov dl, byte [eax + 0x10024060]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x1000496d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x14
jl 0x10004950
mov byte [esp + 0x90], 0
mov dword [esp + 0x1d8], 0x1b
mov eax, dword [0x1015e4e0]
mov esi, dword [eax]
call fcn.10016630
mov edx, dword [esi + 0xc]
push eax
push 0
push 0
push 0
lea ecx, [esp + 0x8c]
push ecx
mov ecx, dword [0x1015e4e0]
call edx
xor eax, eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov byte [esp + 0x90], al
mov ecx, 0x6c
lea ebx, [ebx]
mov dl, byte [eax + str.YXNW2Q70T_GWMHZNO_KI]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x100049fd
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x2c
jl 0x100049e0
mov byte [esp + 0x64], 0
mov dword [esp + 0x1d8], 0x1c
mov ecx, 0x6c
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x100240a8]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x10004a3d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x10004a20
mov byte [esp + 0x28], 0
lea edx, [esp + 0x38]
push edx
push 0
push 0
mov byte [esp + 0x1e4], 0x1d
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0
push 0
lea edx, [esp + 0x24]
push edx
call eax
xor eax, eax
push 0x2d
push eax
lea ecx, [esp + 0x40]
push ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov byte [esp + 0x34], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0xcb
xor eax, eax
mov dl, byte [eax + 0x100240c4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x130], dl
jns 0x10004ac4
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x3b
jl 0x10004aa4
mov byte [esp + 0x16b], 0
mov dword [esp + 0x1d8], 0x1e
mov ecx, 0x87
xor eax, eax
mov dl, byte [eax + 0x10024100]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xb4], dl
jns 0x10004b04
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10004ae4
mov byte [esp + 0xcf], 0
lea edx, [esp + 0x130]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0x1f
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 8
push 8
lea edx, [esp + 0xc8]
push edx
call eax
xor eax, eax
push 0x3c
push eax
lea ecx, [esp + 0x138]
push ecx
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], eax
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0x3b
xor eax, eax
lea esp, [esp]
mov dl, byte [eax + 0x1002411c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x10004bad
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x35
jl 0x10004b90
mov byte [esp + 0x6d], 0
mov dword [esp + 0x1d8], 0x20
mov ecx, 0x65
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x10024154]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x10004bed
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x10004bd0
mov byte [esp + 0x28], 0
lea edx, [esp + 0x38]
push edx
push 0
push 0
mov byte [esp + 0x1e4], 0x21
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 7
push 2
lea edx, [esp + 0x24]
push edx
call eax
xor eax, eax
push 0x36
push eax
lea ecx, [esp + 0x40]
push ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov byte [esp + 0x34], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0x65
xor eax, eax
mov dl, byte [eax + 0x10024154]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x10004c71
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x10004c54
mov byte [esp + 0x94], 0
mov dword [esp + 0x1d8], 0x22
mov ecx, 0xd
xor eax, eax
mov dl, byte [eax + str.H_kBtwqgFxqwnn3HLHFBPLII]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xb4], dl
jns 0x10004cb1
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10004c91
mov byte [esp + 0xcf], 0
mov byte [esp + 0x1d8], 0x23
mov ecx, dword [0x1015e4e0]
mov esi, dword [ecx]
mov eax, dword [esi + 0x28]
lea edx, [esp + 0x7c]
push edx
call eax
mov edx, dword [esi + 0xc]
push eax
push 4
push 2
push 8
lea ecx, [esp + 0xc4]
push ecx
mov ecx, dword [0x1015e4e0]
call edx
xor eax, eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], al
mov ecx, 0xd
lea esp, [esp]
mov dl, byte [eax + str.H_kBtwqgFxqwnn3HLHFBPLII]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x130], dl
jns 0x10004d80
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10004d60
mov byte [esp + 0x14b], 0
mov dword [esp + 0x1d8], 0x24
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [esp + 0x130]
push edx
call eax
cmp eax, 0xcccc
seta al
mov edi, 0x10335683
test al, al
je 0x10004e74
lea esi, [esp + 0x130]
call fcn.1001a0d0
mov ebx, eax
mov edi, 0x100e63c8
lea esi, [esp + 0x7c]
mov dword [esp + 0x1d8], 0x25
call fcn.1001a110
mov esi, eax
mov byte [esp + 0x1d8], 0x26
mov ecx, dword [0x1015e4e0]
mov edi, dword [ecx]
mov eax, dword [edi + 0x28]
push ebx
call eax
mov ecx, dword [0x1015e4e0]
mov edx, dword [edi + 0xc]
push eax
push 1
push 2
push 8
push esi
call edx
xor eax, eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x144], eax
mov byte [esp + 0x148], al
jmp 0x10004f26
lea esi, [esp + 0xb4]
call fcn.1001a0d0
mov ebx, eax
mov edi, 0x100e63c8
lea esi, [esp + 0xfc]
mov dword [esp + 0x1d8], 0x27
call fcn.1001a110
mov esi, eax
mov byte [esp + 0x1d8], 0x28
mov ecx, dword [0x1015e4e0]
mov edi, dword [ecx]
mov edx, dword [edi + 0x28]
push ebx
call edx
mov ecx, dword [0x1015e4e0]
push eax
mov eax, dword [edi + 0xc]
push 4
push 2
push 8
push esi
call eax
xor eax, eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov byte [esp + 0xcc], al
mov ecx, 0x65
xor eax, eax
lea ecx, [ecx]
mov dl, byte [eax + 0x100241a4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x10004f4d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1e
jl 0x10004f30
mov byte [esp + 0x56], 0
mov dword [esp + 0x1d8], 0x29
mov ecx, 0x45
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x100241c4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x10004f8d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10004f70
mov byte [esp + 0x26], 0
push 1
lea edx, [esp + 0x3c]
push edx
push 0
push 4
push 0x8d
mov byte [esp + 0x1ec], 0x2a
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [esp + 0x2c]
push edx
call eax
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov word [esp + 0x24], ax
mov byte [esp + 0x26], al
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov word [esp + 0x54], ax
mov byte [esp + 0x56], al
mov ecx, 0x45
nop
mov dl, byte [eax + 0x100241c4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x1000502d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10005010
mov byte [esp + 0x92], 0
mov dword [esp + 0x1d8], 0x2b
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [esp + 0x7c]
push edx
call eax
cmp eax, 0x1000
seta al
mov edi, 0x10306efb
test al, al
je 0x10005118
lea esi, [esp + 0x38]
call fcn.1001a150
mov ebx, eax
mov edi, 0x10306f33
lea esi, [esp + 0xb4]
mov dword [esp + 0x1d8], 0x2c
call fcn.1001a190
push 1
push ebx
push 0
push 1
push 0x8d
mov byte [esp + 0x1ec], 0x2d
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov word [esp + 0xcc], ax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov word [esp + 0x54], ax
mov byte [esp + 0x56], al
jmp 0x100051d6
lea esi, [esp + 0x7c]
call fcn.1001a150
mov ebx, eax
mov edi, 0x10306f33
lea esi, [esp + 0x130]
mov dword [esp + 0x1d8], 0x2e
call fcn.1001a190
push 1
push ebx
push 0
push 4
push 0x8d
mov byte [esp + 0x1ec], 0x2f
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x144], eax
mov word [esp + 0x148], ax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov word [esp + 0x98], ax
mov byte [esp + 0x9a], al
mov ecx, 0x3c
xor eax, eax
lea ecx, [ecx]
mov dl, byte [eax + 0x100241f8]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xfc], dl
jns 0x10005200
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x20
jl 0x100051e0
mov byte [esp + 0x11c], 0
mov dword [esp + 0x1d8], 0x30
mov ecx, 0xdb
xor eax, eax
mov dl, byte [eax + 0x1002421c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x1000523d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10005220
mov byte [esp + 0x26], 0
lea edx, [esp + 0xfc]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0x31
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0xfffffffffffffffc
push 8
lea edx, [esp + 0x24]
push edx
call eax
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov word [esp + 0x24], ax
mov byte [esp + 0x26], al
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], eax
mov byte [esp + 0x11c], al
mov ecx, 0xdb
mov dl, byte [eax + 0x1002421c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x100052f2
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x100052d5
mov byte [esp + 0x92], 0
mov dword [esp + 0x1d8], 0x32
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [esp + 0x7c]
push edx
call eax
cmp eax, 0x10000
seta al
mov edi, 0x1008675c
test al, al
je 0x100053d5
lea esi, [esp + 0x38]
call fcn.1001a1d0
mov ebx, eax
mov edi, 0x10086798
lea esi, [esp + 0xb4]
mov dword [esp + 0x1d8], 0x33
call fcn.1001a210
push ebx
push 0
push 1
mov byte [esp + 0x1e4], 0x34
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0xffffffffffffffff
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov word [esp + 0xcc], ax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov byte [esp + 0x58], al
jmp 0x10005491
lea esi, [esp + 0xfc]
call fcn.1001a1d0
mov ebx, eax
mov edi, 0x10086798
lea esi, [esp + 0x130]
mov dword [esp + 0x1d8], 0x35
call fcn.1001a210
push ebx
push 0
push 4
mov byte [esp + 0x1e4], 0x36
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0xfffffffffffffffc
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x144], eax
mov word [esp + 0x148], ax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], eax
mov byte [esp + 0x11c], al
mov ecx, 0xe4
xor eax, eax
jmp 0x100054a0
mov dl, byte [eax + 0x10024250]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x100054bd
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x18
jl 0x100054a0
mov byte [esp + 0x94], 0
mov dword [esp + 0x1d8], 0x37
mov ecx, 0x7f
xor eax, eax
lea ecx, [ecx]
mov dl, byte [eax + 0x1002426c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x100054fd
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x100054e0
mov byte [esp + 0x26], 0
push 1
lea edx, [esp + 0x80]
push edx
push 0
push 4
push 0x8e
mov byte [esp + 0x1ec], 0x38
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [esp + 0x2c]
push edx
call eax
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov word [esp + 0x24], ax
mov byte [esp + 0x26], al
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], al
mov ecx, 0xfa
jmp 0x10005590
mov dl, byte [eax + 0x10024284]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x100055ad
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x21
jl 0x10005590
mov byte [esp + 0x59], 0
mov dword [esp + 0x1d8], 0x39
mov ecx, 0x19
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x100242a8]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xb4], dl
jns 0x100055f0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x19
jl 0x100055d0
mov byte [esp + 0xcd], 0
push 1
lea edx, [esp + 0x3c]
push edx
push 0
push 4
push 0xa6
mov byte [esp + 0x1ec], 0x3a
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [esp + 0xd0]
push edx
call eax
xor eax, eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov word [esp + 0xcc], ax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov word [esp + 0x58], ax
mov ecx, 0x19
lea ecx, [ecx]
mov dl, byte [eax + 0x100242a8]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x130], dl
jns 0x100056b0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x19
jl 0x10005690
mov byte [esp + 0x149], 0
mov dword [esp + 0x1d8], 0x3b
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [esp + 0x130]
push edx
call eax
cmp eax, 0x100000
seta al
mov edi, 0x102c52a6
test al, al
je 0x100057aa
lea esi, [esp + 0x38]
call fcn.1001a250
mov ebx, eax
mov edi, 0x100242c4
sub edi, 0x16440e0f
lea esi, [esp + 0xb4]
mov dword [esp + 0x1d8], 0x3c
call fcn.1001a290
push 1
push ebx
push 0
push 1
push 0xa6
mov byte [esp + 0x1ec], 0x3d
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov byte [esp + 0xd0], al
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov word [esp + 0x58], ax
jmp 0x1000585c
lea esi, [esp + 0x10]
call fcn.1001a250
mov ebx, eax
mov edi, 0x100242c4
sub edi, 0x16440e0f
lea esi, [esp + 0x130]
mov dword [esp + 0x1d8], 0x3e
call fcn.1001a290
push 1
push ebx
push 0
push 4
push 0xa6
mov byte [esp + 0x1ec], 0x3f
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x144], eax
mov dword [esp + 0x148], eax
mov byte [esp + 0x14c], al
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov word [esp + 0x30], ax
mov ecx, 0xf7
xor eax, eax
mov dl, byte [eax + 0x100242e4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xfc], dl
jns 0x10005883
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x2c
jl 0x10005863
mov byte [esp + 0x128], 0
mov dword [esp + 0x1d8], 0x40
mov ecx, 0xf7
xor eax, eax
mov dl, byte [eax + 0x10024314]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x100058c0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x100058a3
mov byte [esp + 0x92], 0
lea edx, [esp + 0xfc]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0x41
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 2
push 8
lea edx, [esp + 0x90]
push edx
call eax
xor eax, eax
push 0x2d
push eax
lea ecx, [esp + 0x104]
push ecx
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov word [esp + 0x9c], ax
mov byte [esp + 0x9e], al
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0xb0
xor eax, eax
lea esp, [esp]
mov dl, byte [eax + 0x10024330]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x174], dl
jns 0x10005970
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x47
jl 0x10005950
mov byte [esp + 0x1bb], 0
mov dword [esp + 0x1d8], 0x42
mov ecx, 0x7d
xor eax, eax
mov dl, byte [eax + 0x10024378]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x100059ad
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x14
jl 0x10005990
mov byte [esp + 0x24], 0
lea edx, [esp + 0x174]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0x43
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0x14
push 8
lea edx, [esp + 0x24]
push edx
call eax
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0x7d
xor eax, eax
mov dl, byte [eax + 0x10024378]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x10005a0e
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x14
jl 0x100059f1
mov byte [esp + 0x24], 0
mov dword [esp + 0x1d8], 0x44
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [esp + 0x10]
push edx
call eax
cmp eax, 0x48b41
seta al
mov edi, 0x10174d74
test al, al
je 0x10005abf
lea esi, [esp + 0x174]
call fcn.1001a2d0
mov ebx, eax
mov edi, 0x4cddea43
lea esi, [esp + 0x7c]
mov dword [esp + 0x1d8], 0x45
call fcn.1001a310
push ebx
push 0
push 1
mov byte [esp + 0x1e4], 0x46
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0x14
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
lea ecx, [esp + 0x174]
jmp 0x10005b3b
lea esi, [esp + 0xb4]
call fcn.1001a2d0
mov ebx, eax
mov edi, 0x4cddea43
lea esi, [esp + 0xfc]
mov dword [esp + 0x1d8], 0x47
call fcn.1001a310
push ebx
push 0
push 4
mov byte [esp + 0x1e4], 0x48
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0x14
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], eax
lea ecx, [esp + 0xb4]
push 0x48
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, 0x72
xor eax, eax
nop
mov dl, byte [eax + str.GFTM4W:ZC__N]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x10005b6d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x20
jl 0x10005b50
mov byte [esp + 0x58], 0
mov dword [esp + 0x1d8], 0x49
mov ecx, 0xb0
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x100243cc]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x10005bad
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10005b90
mov byte [esp + 0x26], 0
lea edx, [esp + 0x38]
push edx
push 0
push 4
mov byte [esp + 0x1e4], 0x4a
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push 0x10
push 8
lea edx, [esp + 0x24]
push edx
call eax
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov word [esp + 0x24], ax
mov byte [esp + 0x26], al
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov byte [esp + 0x58], al
mov ecx, 0xb0
mov dl, byte [eax + 0x100243cc]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x10005c44
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x16
jl 0x10005c27
mov byte [esp + 0x92], 0
mov dword [esp + 0x1d8], 0x4b
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [esp + 0x7c]
push edx
call eax
cmp eax, 0x10000
seta al
mov edi, 0x100a4e0c
lea esi, [esp + 0x38]
test al, al
je 0x10005dac
call fcn.1001a350
mov ebx, eax
mov edi, 0x349b81f0
lea esi, [esp + 0xb4]
mov dword [esp + 0x1d8], 0x4c
call fcn.1001a390
push ebx
push 0
push 1
mov byte [esp + 0x1e4], 0x4d
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0x10
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov edi, 0x100a4e0c
lea esi, [esp + 0x38]
call fcn.1001a350
mov ebx, eax
mov edi, 0x1012523f
lea esi, [esp + 0xb4]
mov dword [esp + 0x1d8], 0x4e
call fcn.1001a3d0
push ebx
push 0
push 1
mov byte [esp + 0x1e4], 0x4f
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0x1b
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov edi, 0x100a4e0c
lea esi, [esp + 0x10]
call fcn.1001a350
mov ebx, eax
mov edi, 0x10125263
lea esi, [esp + 0x38]
mov dword [esp + 0x1d8], 0x50
call fcn.1001a3d0
push ebx
push 0
push 1
mov byte [esp + 0x1e4], 0x51
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0x1e
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov byte [esp + 0x58], al
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov byte [esp + 0x30], al
jmp 0x10005f01
call fcn.1001a350
mov ebx, eax
mov edi, 0x349b81f0
lea esi, [esp + 0xb4]
mov dword [esp + 0x1d8], 0x52
call fcn.1001a390
push ebx
push 0
push 4
mov byte [esp + 0x1e4], 0x53
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0x10
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov edi, 0x100a4e0c
lea esi, [esp + 0x38]
call fcn.1001a350
mov ebx, eax
mov edi, 0x1012523f
lea esi, [esp + 0xb4]
mov dword [esp + 0x1d8], 0x54
call fcn.1001a3d0
push ebx
push 0
push 1
mov byte [esp + 0x1e4], 0x55
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0x1e
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
mov edi, 0x100a4e0c
lea esi, [esp + 0xfc]
call fcn.1001a350
mov ebx, eax
mov edi, 0x10125263
lea esi, [esp + 0x7c]
mov dword [esp + 0x1d8], 0x56
call fcn.1001a3d0
push ebx
push 0
push 1
mov byte [esp + 0x1e4], 0x57
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0x21
push 8
push eax
mov eax, dword [edx + 0x18]
call eax
xor eax, eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], al
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], eax
mov byte [esp + 0x11c], al
mov ecx, 0x58
xor eax, eax
jmp 0x10005f10
mov dl, byte [eax + 0x10024448]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xb4], dl
jns 0x10005f30
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x19
jl 0x10005f10
mov byte [esp + 0xcd], 0
mov dword [esp + 0x1d8], 0x58
mov ecx, 0x58
xor eax, eax
mov dl, byte [eax + 0x10024464]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x130], dl
jns 0x10005f70
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10005f50
mov byte [esp + 0x14b], 0
push 1
lea edx, [esp + 0xb8]
push edx
push 0
push 4
push 0xffffffffffffffba
mov byte [esp + 0x1ec], 0x59
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [esp + 0x14c]
push edx
call eax
xor eax, eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x144], eax
mov dword [esp + 0x148], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov word [esp + 0xcc], ax
mov ecx, 0x58
lea esp, [esp]
mov dl, byte [eax + 0x10024480]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x1000603d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1e
jl 0x10006020
mov byte [esp + 0x56], 0
mov dword [esp + 0x1d8], 0x5a
mov ecx, 0x58
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x100244a0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x7c], dl
jns 0x1000607d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x20
jl 0x10006060
mov byte [esp + 0x9c], 0
push 1
lea edx, [esp + 0x3c]
push edx
push 0
push 4
push 0xffffffffffffffba
mov byte [esp + 0x1ec], 0x5b
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [esp + 0x98]
push edx
call eax
xor eax, eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov byte [esp + 0x9c], al
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov word [esp + 0x54], ax
mov byte [esp + 0x56], al
mov ecx, 0x58
mov dl, byte [eax + 0x100244c4]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xb4], dl
jns 0x10006141
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10006121
mov byte [esp + 0xcf], 0
mov dword [esp + 0x1d8], 0x5c
mov ecx, 0x58
xor eax, eax
mov dl, byte [eax + 0x100244e0]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x10], dl
jns 0x1000617e
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1d
jl 0x10006161
mov byte [esp + 0x2d], 0
push 1
lea edx, [esp + 0xb8]
push edx
push 0
push 4
push 0xffffffffffffffba
mov byte [esp + 0x1ec], 0x5d
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [esp + 0x2c]
push edx
call eax
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov word [esp + 0x2c], ax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov ecx, 0x58
mov dl, byte [eax + 0x10024500]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x38], dl
jns 0x1000622d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x23
jl 0x10006210
mov byte [esp + 0x5b], 0
mov dword [esp + 0x1d8], 0x5e
mov ecx, 0xbf
xor eax, eax
lea ebx, [ebx]
mov dl, byte [eax + 0x10024524]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0x130], dl
jns 0x10006270
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x10006250
mov byte [esp + 0x14b], 0
push 1
lea edx, [esp + 0x3c]
push edx
push 0
push 4
push 0xffffffffffffffed
mov byte [esp + 0x1ec], 0x5f
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
push 0
push 8
lea edx, [esp + 0x14c]
push edx
call eax
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0xbf
xor eax, eax
jmp 0x100062c0
mov dl, byte [eax + 0x10024524]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xb4], dl
jns 0x100062e0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x1b
jl 0x100062c0
mov byte [esp + 0xcf], 0
mov dword [esp + 0x1d8], 0x60
mov ecx, dword [0x1015e4e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
lea edx, [esp + 0xb4]
push edx
call eax
cmp eax, 0x478df
seta al
mov edi, 0x10236c4a
test al, al
je 0x100063d1
lea esi, [esp + 0x38]
call fcn.1001a410
mov ebx, eax
mov edi, 0x1024538c
lea esi, [esp + 0xb4]
mov dword [esp + 0x1d8], 0x61
call fcn.1001a450
push 1
push ebx
push 0
push 1
push 0xffffffffffffffed
mov byte [esp + 0x1ec], 0x62
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov word [esp + 0xd0], ax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
jmp 0x10006492
lea esi, [esp + 0x7c]
call fcn.1001a410
mov ebx, eax
mov edi, 0x1024538c
lea esi, [esp + 0x130]
mov dword [esp + 0x1d8], 0x63
call fcn.1001a450
push 1
push ebx
push 0
push 4
push 0xffffffffffffffed
mov byte [esp + 0x1ec], 0x64
mov ecx, dword [0x1015e4e0]
mov edx, dword [ecx]
push 0
push 8
push eax
mov eax, dword [edx + 0x14]
call eax
xor eax, eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x144], eax
mov dword [esp + 0x148], eax
mov word [esp + 0x14c], ax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov ecx, 0xf7
xor eax, eax
lea esp, [esp]
mov dl, byte [eax + 0x10024560]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [esp + eax + 0xfc], dl
jns 0x100064c0
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 0x30
jl 0x100064a0