Function at 0x49a6ef
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x1039c452
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x105623f8]
xor eax, esp
mov dword [esp + 0x2c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x105623f8]
xor eax, esp
push eax
lea eax, [esp + 0x44]
mov dword fs:[0], eax
mov eax, dword [esp + 0x54]
mov edi, dword [esp + 0x58]
mov esi, ecx
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], eax
xor ebx, ebx
lea ebp, [esi + 4]
mov dword [esi], 0x1046dbdc
mov dword [ebp + 0x18], 0xf
mov dword [ebp + 0x14], ebx
mov dword [esp + 0x4c], ebx
mov byte [ebp + 4], bl
lea ecx, [esi + 0x24]
mov byte [esp + 0x4c], 1
call fcn.004072ef
lea ecx, [esi + 0x44]
call fcn.0057fe9f
mov dword [esi + 0x34], ebx
mov dword [esi + 0x38], ebx
mov dword [esi + 0x3c], 3
mov dword [esi + 0x40], ebx
fld qword [0x10470438]
mov ecx, 1
mov word [esi + 0x5c], cx
mov eax, ecx
xor ecx, ecx
mov edx, 0x64
mov word [esi + 0x5e], dx
mov word [esi + 0x60], ax
mov word [esi + 0x62], cx
fstp qword [esi + 0x68]
mov edx, eax
mov word [esi + 0x70], dx
xor eax, eax
mov word [esi + 0x72], ax
mov word [esi + 0x74], cx
mov word [esi + 0x76], dx
mov word [esi + 0x78], ax
xor edx, edx
mov word [esi + 0x7c], dx
mov word [esi + 0x7e], ax
mov word [esi + 0x7a], cx
mov word [esi + 0x80], cx
mov edx, 0xff
mov word [esi + 0x82], dx
mov eax, 0x4c1
mov word [esi + 0x84], ax
mov edx, dword [edi]
mov eax, dword [edx + 0xac]
lea ecx, [edi + 0x87c]
push ecx
push edi
mov byte [esp + 0x54], 2
call eax
add esp, 4
cmp eax, 0x500
setle cl
movzx edx, cl
push edx
lea ecx, [esi + 0x88]
call fcn.00429dbf
lea ecx, [esi + 0x130]
mov byte [esp + 0x4c], 3
call fcn.0042a10f
mov eax, 8
mov word [esi + 0x13c], ax
mov ecx, dword [edi]
mov edx, dword [ecx + 0xac]
push edi
call edx
add esp, 4
cmp eax, 0x500
setle al
movzx ecx, al
push ecx
lea ecx, [esi + 0x140]
call fcn.0040c84f
mov edx, dword [edi]
mov eax, dword [edx + 0xac]
push edi
call eax
add esp, 4
cmp eax, 0x500
setle cl
movzx edx, cl
push edx
lea ecx, [esi + 0x150]
call fcn.00421d9f
lea ecx, [esi + 0x164]
call fcn.0041eb3f
lea ecx, [esi + 0x184]
mov byte [esp + 0x4c], 4
call fcn.0041fdcf
lea ecx, [esi + 0x188]
call fcn.0057fe9f
lea ecx, [esi + 0x1a0]
mov byte [esp + 0x4c], 5
call fcn.0057fe9f
lea ecx, [esi + 0x1bc]
mov byte [esp + 0x4c], 6
call fcn.0057fe9f
mov eax, 0x89c
mov word [esi + 0x1b8], ax
mov byte [esi + 0x1d4], 1
lea ecx, [esi + 0x1e0]
mov byte [esp + 0x4c], 7
call fcn.0057fe9f
mov ecx, 0x90
mov word [esi + 0x1dc], cx
mov byte [esi + 0x1f8], 1
lea ecx, [esi + 0x200]
mov byte [esp + 0x4c], 8
call fcn.0057fe9f
mov edx, 0x874
mov word [esi + 0x1fc], dx
mov byte [esi + 0x218], 1
lea ecx, [esi + 0x220]
mov byte [esp + 0x4c], 9
call fcn.0057fe9f
mov eax, 0x9d
mov word [esi + 0x21c], ax
mov byte [esi + 0x238], 1
lea ecx, [esi + 0x240]
mov byte [esp + 0x4c], 0xa
call fcn.0057fe9f
mov ecx, 0x1c2
mov word [esi + 0x23c], cx
mov byte [esi + 0x258], 1
lea ecx, [esi + 0x260]
mov byte [esp + 0x4c], 0xb
call fcn.0057fe9f
mov edx, 0x50
mov word [esi + 0x25c], dx
mov byte [esi + 0x278], 1
lea ecx, [esi + 0x280]
mov byte [esp + 0x4c], 0xc
call fcn.0057fe9f
mov eax, 0x88b
mov word [esi + 0x27c], ax
mov byte [esi + 0x298], 1
lea ecx, [esi + 0x29c]
mov byte [esp + 0x4c], 0xd
call fcn.0040ca1f
lea ecx, [esi + 0x2a4]
call fcn.0057fe9f
mov ecx, 0x1ba
mov word [esi + 0x2a0], cx
mov byte [esi + 0x2bc], 1
lea ecx, [esi + 0x2c0]
mov byte [esp + 0x4c], 0xe
call fcn.00420cdf
lea ecx, [esi + 0x2f0]
call fcn.0057fe9f
lea ecx, [esi + 0x308]
mov byte [esp + 0x4c], 0xf
call fcn.0057fe9f
lea ecx, [esi + 0x320]
mov byte [esp + 0x4c], 0x10
call fcn.0057fe9f
lea ecx, [esi + 0x338]
mov byte [esp + 0x4c], 0x11
call fcn.0057fe9f
lea ecx, [esi + 0x350]
mov byte [esp + 0x4c], 0x12
call fcn.0057fe9f
lea ecx, [esi + 0x368]
mov byte [esp + 0x4c], 0x13
call fcn.0057fe9f
lea ecx, [esi + 0x380]
mov byte [esp + 0x4c], 0x14
call fcn.0057fe9f
lea ecx, [esi + 0x398]
mov byte [esp + 0x4c], 0x15
call fcn.0057fe9f
lea ecx, [esi + 0x3b0]
mov byte [esp + 0x4c], 0x16
call fcn.0057fe9f
lea ecx, [esi + 0x3c8]
mov byte [esp + 0x4c], 0x17
call fcn.0057fe9f
lea ecx, [esi + 0x3e0]
mov byte [esp + 0x4c], 0x18
call fcn.0057fe9f
lea ecx, [esi + 0x3f8]
mov byte [esp + 0x4c], 0x19
call fcn.0057fe9f
lea ecx, [esi + 0x410]
mov byte [esp + 0x4c], 0x1a
call fcn.0057fe9f
lea ecx, [esi + 0x428]
mov byte [esp + 0x4c], 0x1b
call fcn.0057fe9f
lea ecx, [esi + 0x440]
mov byte [esp + 0x4c], 0x1c
call fcn.0057fe9f
lea ecx, [esi + 0x458]
mov byte [esp + 0x4c], 0x1d
call fcn.0057fe9f
push edi
lea ecx, [esi + 0x474]
mov byte [esp + 0x50], 0x1e
call fcn.004bec1f
lea ecx, [esi + 0x4d4]
mov byte [esp + 0x4c], 0x1f
call fcn.0057fe9f
lea ecx, [esi + 0x4ec]
mov byte [esp + 0x4c], 0x20
call fcn.0041e7ff
lea ecx, [esi + 0x4f8]
call fcn.004a07cf
xor edx, edx
mov dword [esi + 0x40510], 7
mov dword [esi + 0x4050c], ebx
mov word [esi + 0x404fc], dx
xor eax, eax
lea ecx, [esi + 0x40518]
mov byte [esp + 0x4c], 0x22
mov word [esi + 0x40516], ax
call fcn.00576b1f
lea ecx, [esi + 0x40558]
push ebx
mov byte [esp + 0x50], 0x23
call fcn.0045290f
mov byte [esi + 0x40d54], bl
mov eax, dword [edi + 0x9fc]
mov byte [esp + 0x4c], 0x24
cmp eax, 0x10
jne 0x49ac62
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
push 0xffffffffffffffff
lea eax, [edi + 0x9b0]
push ebx
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], ebx
push eax
mov byte [ecx + 4], bl
call fcn.0040509f
lea ecx, [esp + 0x40]
push ecx
call fcn.004bd4cf
add esp, 0x20
mov eax, dword [esp + 0x38]
mov byte [esp + 0x4c], 0x25
lea ecx, [esp + 0x24]
cmp eax, 0x10
jb 0x49abc3
push 0xffffffffffffffff
push 0x10
call fcn.00404daf
jmp 0x49abd1
mov edx, 0x10
push ebx
sub edx, eax
push edx
call fcn.0040845f
call fcn.0077a3b6
and eax, 0x8000000f
jns 0x49abe2
dec eax
or eax, 0xfffffff0
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esp + 0x38]
jbe 0x49abf5
call fcn.00776e71
mov eax, dword [esp + 0x14]
cmp dword [esp + 0x3c], 0x10
jb 0x49ac06
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x18], ecx
jmp 0x49ac0e
lea edx, [esp + 0x28]
mov dword [esp + 0x18], edx
cmp eax, dword [edi + 0x9fc]
jbe 0x49ac1f
call fcn.00776e71
mov eax, dword [esp + 0x14]
cmp dword [edi + 0xa00], 0x10
jb 0x49ac30
mov ecx, dword [edi + 0x9ec]
jmp 0x49ac36
lea ecx, [edi + 0x9ec]
mov edx, dword [esp + 0x18]
mov dl, byte [edx + eax]
cmp dl, byte [ecx + eax]
mov byte [esp + 0x4c], 0x24
sete al
cmp dword [esp + 0x3c], 0x10
mov byte [esi + 0x40d54], al
jb 0x49ac62
mov ecx, dword [esp + 0x28]
push ecx
call fcn.00776c58
add esp, 4
mov edx, dword [esp + 0x1c]
mov eax, edx
mov dword [esi + 0x20], edi
lea edi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x49ac6f
sub eax, edi
push eax
push edx
mov ecx, ebp
call fcn.0040517f
xor eax, eax
mov word [esi + 0x470], ax
or eax, 0xffffffff
mov edx, 0x10
mov word [esi + 0x26], dx
mov byte [esi + 0x40514], bl
mov byte [esi + 0x4094c], bl
lea edi, [esi + 0x40950]
mov ecx, 0x100
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x20]
cmp byte [eax + 0x9a8], bl
je 0x49b09a
mov byte [eax + 0x9a8], bl
mov ecx, dword [esi + 0x140]
mov di, word [0x1056993c]
mov edx, dword [esi + 0x144]
mov eax, dword [esi + 0x148]
mov dword [esp + 0x24], ecx
mov ecx, dword [esi + 0x14c]
inc di
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], ecx
cmp di, 3
jbe 0x49acfd
xor edi, edi
xor ebp, ebp
mov cl, 1
mov dword [esp + 0x14], ebx
mov al, 0x98
mov dword [esp + 0x18], 0x1047060c
and al, 0xf
movsx dx, al
cmp cl, bl
je 0x49ad22
movzx eax, dx
mov dword [esp + 0x14], eax
jmp 0x49ad40
movzx eax, di
imul eax, eax, 0xfff
shl dx, 4
add word [esp + 0x14], dx
mov dl, byte [esp + 0x14]
mov byte [eax + ebp + 0x10565940], dl
inc ebp
mov eax, dword [esp + 0x18]
cmp cl, bl
sete cl
inc eax
mov dword [esp + 0x18], eax
mov al, byte [eax]
cmp al, bl
jne 0x49ad0f
movzx eax, di
imul eax, eax, 0xfff
inc di
mov byte [eax + ebp + 0x10565940], bl
mov word [0x1056993c], di
cmp di, 3
jbe 0x49ad7c
xor edi, edi
mov word [0x1056993c], di
xor ebp, ebp
mov cl, 1
mov dword [esp + 0x14], ebx
mov al, 0x4b
mov dword [esp + 0x18], 0x104705c8
nop
and al, 0xf
movsx dx, al
cmp cl, bl
je 0x49ada2
movzx eax, dx
mov dword [esp + 0x14], eax
jmp 0x49adc0
movzx eax, di
imul eax, eax, 0xfff
shl dx, 4
add word [esp + 0x14], dx
mov dl, byte [esp + 0x14]
mov byte [eax + ebp + 0x10565940], dl
inc ebp
mov eax, dword [esp + 0x18]
cmp cl, bl
sete cl
inc eax
mov dword [esp + 0x18], eax
mov al, byte [eax]
cmp al, bl
jne 0x49ad8f
movzx eax, di
imul eax, eax, 0xfff
mov byte [eax + ebp + 0x10565940], bl
mov ecx, dword [esi + 0x20]
inc di
cmp byte [ecx + 0xa04], bl
mov word [0x1056993c], di
je 0x49ae66
cmp di, 3
jbe 0x49ae07
xor edi, edi
mov word [0x1056993c], di
xor ebp, ebp
mov cl, 1
mov dword [esp + 0x14], ebx
mov al, 0x53
mov dword [esp + 0x18], 0x10470508
lea ebx, [ebx]
and al, 0xf
movsx dx, al
cmp cl, bl
je 0x49ae32
movzx eax, dx
mov dword [esp + 0x14], eax
jmp 0x49ae50
movzx eax, di
imul eax, eax, 0xfff
shl dx, 4
add word [esp + 0x14], dx
mov dl, byte [esp + 0x14]
mov byte [eax + ebp + 0x10565940], dl
inc ebp
mov eax, dword [esp + 0x18]
cmp cl, bl
sete cl
inc eax
mov dword [esp + 0x18], eax
mov al, byte [eax]
cmp al, bl
jne 0x49ae1f
jmp 0x49aecc
cmp di, 3
jbe 0x49ae75
xor edi, edi
mov word [0x1056993c], di
xor ebp, ebp
mov cl, 1
mov dword [esp + 0x14], ebx
mov al, 0x33
mov dword [esp + 0x18], 0x10470448
and al, 0xf
movsx dx, al
cmp cl, bl
je 0x49ae9a
movzx eax, dx
mov dword [esp + 0x14], eax
jmp 0x49aeb8
movzx eax, di
imul eax, eax, 0xfff
shl dx, 4
add word [esp + 0x14], dx
mov dl, byte [esp + 0x14]
mov byte [eax + ebp + 0x10565940], dl
inc ebp
mov eax, dword [esp + 0x18]
cmp cl, bl
sete cl
inc eax
mov dword [esp + 0x18], eax
mov al, byte [eax]
cmp al, bl
jne 0x49ae87
movzx eax, di
imul eax, eax, 0xfff
mov byte [eax + ebp + 0x10565940], bl
mov edx, dword [esi + 0x20]
mov edx, dword [edx + 0x9a0]
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x14]
push 2
push edx
lea eax, [eax + 0x10565940]
push eax
push ebx
push ebx
push esi
call ecx
mov ax, word [0x1056993c]
inc ax
add esp, 0x18
mov word [0x1056993c], ax
cmp ax, 3
jbe 0x49af19
xor edx, edx
mov word [0x1056993c], dx
xor edi, edi
mov cl, 1
mov dword [esp + 0x14], ebx
mov al, 0x98
mov ebp, 0x1047060c
lea esp, [esp]
and al, 0xf
cbw
cmp cl, bl
je 0x49af40
movzx edx, ax
mov dword [esp + 0x14], edx
jmp 0x49af62
movzx edx, word [0x1056993c]
imul edx, edx, 0xfff
shl ax, 4
add word [esp + 0x14], ax
mov al, byte [esp + 0x14]
mov byte [edx + edi + 0x10565940], al
inc edi
mov al, byte [ebp + 1]
cmp cl, bl
sete cl
inc ebp
cmp al, bl
jne 0x49af2f
movzx eax, word [0x1056993c]
imul eax, eax, 0xfff
mov byte [eax + edi + 0x10565940], bl
lea edi, [eax + 0x10565940]
mov eax, edi
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x49af8f
sub eax, edx
mov ecx, ebx
je 0x49afb1
lea ecx, [ecx]
movsx dx, byte [ecx + edi]
mov word [ecx*2 + 0x10563940], dx
inc ecx
cmp ecx, eax
jb 0x49af9f
push 0xff
push ebx
xor ecx, ecx
mov word [eax*2 + 0x10563940], cx
mov edx, dword [esi]
mov eax, dword [edx + 0x80]
push ebx
push ebx
push esi
mov byte [esi + 0x40d54], 1
call eax
fld qword [0x10470440]
mov ecx, dword [esi]
mov edx, dword [ecx + 0x68]
add esp, 0x14
push ebx
push ebx
sub esp, 8
fstp qword [esp]
push ebx
push esi
call edx
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov dword [esi + 0x140], eax
mov eax, dword [esp + 0x48]
mov dword [esi + 0x144], ecx
mov ecx, dword [esi + 0x20]
mov dword [esi + 0x148], edx
mov dword [esi + 0x14c], eax
mov byte [ecx + 0x9a8], 1
mov ax, word [0x1056993c]
inc ax
add esp, 0x18
cmp ax, 3
jbe 0x49b034
xor eax, eax
movzx edx, ax
imul edx, edx, 0xfff
inc ax
mov byte [edx + 0x10565940], bl
cmp ax, 3
jbe 0x49b04d
xor eax, eax
movzx ecx, ax
imul ecx, ecx, 0xfff
inc ax
mov byte [ecx + 0x10565940], bl
cmp ax, 3
jbe 0x49b066
xor eax, eax
movzx edx, ax
imul edx, edx, 0xfff
inc ax
mov byte [edx + 0x10565940], bl
mov word [0x1056993c], ax
cmp ax, 3
jbe 0x49b08b
xor eax, eax
mov word [0x1056993c], ax
movzx eax, ax
imul eax, eax, 0xfff
mov byte [eax + 0x10565940], bl
mov eax, esi
mov ecx, dword [esp + 0x44]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.00777267
add esp, 0x3c
ret 8