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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff78
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 8], ecx
mov edi, edx
mov esi, eax
xor eax, eax
push ebp
push 0x4bf78f
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x34]
mov eax, esi
call fcn.004bf7a0
mov eax, dword [0x5712b8]
call fcn.004bdc78
test al, al
je 0x4bec81
xor edx, edx
mov eax, esi
call fcn.004bfe50
mov ebx, eax
add ebx, dword [ebp - 0x34]
call fcn.004bdbb8
add ebx, eax
mov dword [ebp - 0x34], ebx
mov dl, 1
mov eax, esi
call fcn.004bfe50
mov ebx, eax
add ebx, dword [ebp - 0x30]
call fcn.004bdbb8
add ebx, eax
mov dword [ebp - 0x30], ebx
mov dl, 2
mov eax, esi
call fcn.004bfe50
mov ebx, dword [ebp - 0x2c]
sub ebx, eax
call fcn.004bdbb8
sub ebx, eax
mov dword [ebp - 0x2c], ebx
mov dl, 3
mov eax, esi
call fcn.004bfe50
mov ebx, dword [ebp - 0x28]
sub ebx, eax
call fcn.004bdbb8
sub ebx, eax
mov dword [ebp - 0x28], ebx
jmp 0x4becd2
mov eax, dword [0x56a184]
mov eax, dword [eax + 0x10]
mov edx, 1
call fcn.004c0f70
add dword [ebp - 0x34], eax
mov eax, dword [0x56a184]
mov eax, dword [eax + 0x10]
xor edx, edx
call fcn.004c0f70
add dword [ebp - 0x30], eax
mov eax, dword [0x56a184]
mov eax, dword [eax + 0x10]
mov edx, 3
call fcn.004c0f70
sub dword [ebp - 0x2c], eax
mov eax, dword [0x56a184]
mov eax, dword [eax + 0x10]
mov edx, 2
call fcn.004c0f70
sub dword [ebp - 0x28], eax
mov byte [ebp - 9], 1
mov eax, dword [0x5712b8]
cmp dword [eax + 0x60], 0
je 0x4bf17f
mov eax, dword [0x5712b8]
mov ebx, dword [eax + 0x78]
test ebx, ebx
je 0x4beece
mov eax, dword [0x5712b8]
movzx eax, byte [eax + 0x7c]
sub al, 1
jb 0x4bed19
je 0x4bedab
dec al
je 0x4bed56
dec al
je 0x4bede5
jmp 0x4bee35
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x14], eax
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [0x5712b8]
mov edx, dword [edx + 0x64]
sub edx, eax
sar edx, 1
jns 0x4bed38
adc edx, 0
add edx, dword [ebp - 0x30]
mov dword [ebp - 0x10], edx
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
mov edx, dword [eax]
call dword [edx + 0x30]
add eax, 4
add dword [ebp - 0x34], eax
jmp 0x4bee35
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
mov edx, dword [0x5712b8]
mov edx, dword [edx + 0x60]
add edx, dword [ebp - 0x34]
sub edx, eax
mov dword [ebp - 0x14], edx
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [0x5712b8]
mov edx, dword [edx + 0x64]
sub edx, eax
sar edx, 1
jns 0x4bed8d
adc edx, 0
add edx, dword [ebp - 0x30]
mov dword [ebp - 0x10], edx
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
mov edx, dword [eax]
call dword [edx + 0x30]
add eax, 4
sub dword [ebp - 0x2c], eax
jmp 0x4bee35
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
mov edx, dword [0x5712b8]
mov edx, dword [edx + 0x60]
sub edx, eax
sar edx, 1
jns 0x4bedc4
adc edx, 0
add edx, dword [ebp - 0x34]
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x10], eax
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
mov edx, dword [eax]
call dword [edx + 0x24]
add eax, 4
add dword [ebp - 0x30], eax
jmp 0x4bee35
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x30]
mov edx, dword [0x5712b8]
mov edx, dword [edx + 0x60]
sub edx, eax
sar edx, 1
jns 0x4bedfe
adc edx, 0
add edx, dword [ebp - 0x34]
mov dword [ebp - 0x14], edx
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [0x5712b8]
mov edx, dword [edx + 0x64]
add edx, dword [ebp - 0x30]
sub edx, eax
mov dword [ebp - 0x10], edx
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
mov edx, dword [eax]
call dword [edx + 0x24]
add eax, 4
sub dword [ebp - 0x28], eax
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
call fcn.004362c0
cmp al, 7
jne 0x4beeb3
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
push eax
mov eax, dword [0x56aff4]
push eax
push 0
push 0x1fffffff
push 0
push 0
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
mov edx, dword [eax]
call dword [edx + 0x24]
add eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x64]
push eax
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
add ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
call fcn.004080ac
lea eax, [ebp - 0x64]
push eax
lea edx, [ebp - 0x74]
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
call fcn.00555de4
lea edx, [ebp - 0x74]
mov ecx, edi
pop eax
call fcn.005099a8
jmp 0x4beece
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x78]
push eax
mov eax, edi
call fcn.004361d4
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
call fcn.00430fa4
mov eax, dword [0x5712b8]
cmp dword [eax + 0x70], 0
je 0x4bef8a
push esi
push edi
lea esi, [ebp - 0x34]
lea edi, [ebp - 0x44]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop edi
pop esi
push 0xc10
mov eax, edi
call fcn.004361d4
call fcn.00431778
push eax
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x70]
call fcn.00405908
mov edx, eax
lea eax, [ebp - 0x78]
call fcn.00405a28
mov edx, dword [ebp - 0x78]
lea ecx, [ebp - 0x44]
pop eax
call fcn.005074b0
lea eax, [ebp - 0x34]
xor edx, edx
call fcn.00555efc
mov ebx, eax
lea eax, [ebp - 0x44]
xor edx, edx
call fcn.00555efc
sub ebx, eax
sar ebx, 1
jns 0x4bef3f
adc ebx, 0
add ebx, dword [ebp - 0x34]
mov dword [ebp - 0x54], ebx
lea eax, [ebp - 0x34]
xor edx, edx
call fcn.00555f10
mov ebx, eax
lea eax, [ebp - 0x44]
xor edx, edx
call fcn.00555f10
sub ebx, eax
sar ebx, 1
jns 0x4bef64
adc ebx, 0
add ebx, dword [ebp - 0x30]
mov dword [ebp - 0x50], ebx
lea eax, [ebp - 0x44]
xor edx, edx
call fcn.00555efc
add eax, dword [ebp - 0x54]
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x44]
xor edx, edx
call fcn.00555f10
add eax, dword [ebp - 0x50]
mov dword [ebp - 0x48], eax
mov eax, dword [0x5712b8]
call fcn.004bdc78
test al, al
je 0x4bf06b
mov eax, dword [0x5712b8]
cmp byte [eax + 0x3d], 0
je 0x4beffa
mov dl, 1
mov eax, dword [0x53b934]
call fcn.0053c0c4
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov byte [eax + 0x50], 1
lea eax, [ebp - 0x54]
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [0x5712b8]
mov ecx, dword [eax + 0x70]
mov edx, edi
mov eax, dword [ebp - 0x20]
call fcn.0053de78
lea eax, [ebp - 0x64]
push eax
lea edx, [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
call fcn.0053db54
mov eax, dword [ebp - 0x20]
xor edx, edx
mov dword [ebp - 0x20], edx
call fcn.00403d30
jmp 0x4bf743
mov eax, esi
call fcn.0046cf34
mov ebx, eax
mov eax, dword [0x5712b8]
movzx eax, byte [eax + 0x50]
movzx eax, word [eax*2 + 0x56a17c]
or ax, 0x150
movzx eax, ax
or ebx, eax
or ebx, 4
mov eax, dword [0x56b194]
mov eax, dword [eax]
call fcn.0048aab4
test al, al
je 0x4bf036
or ebx, 0x20000
lea eax, [ebp - 0x54]
push eax
push ebx
mov eax, dword [esi + 0x284]
push eax
push 0
mov eax, dword [0x56b084]
mov eax, dword [eax]
push eax
push 0
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x70]
call fcn.00405908
mov edx, eax
mov cl, 1
mov eax, edi
call fcn.004a7b94
jmp 0x4bf743
cmp dword [0x56a190], 0
je 0x4bf08f
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
mov edx, dword [0x56a190]
mov edx, dword [edx + 0x1c]
mov edx, dword [edx + 0x18]
call fcn.004302fc
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0x14]
mov dl, 1
call fcn.00430da8
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
cmp dword [eax + 0x18], 0
jge 0x4bf0c1
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
xor edx, edx
call fcn.004302fc
mov eax, dword [0x5712b8]
cmp byte [eax + 0x3d], 0
je 0x4bf11f
mov dl, 1
mov eax, dword [0x53b934]
call fcn.0053c0c4
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov byte [eax + 0x50], 1
lea eax, [ebp - 0x54]
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [0x5712b8]
mov ecx, dword [eax + 0x70]
mov edx, edi
mov eax, dword [ebp - 0x20]
call fcn.0053de78
lea eax, [ebp - 0x64]
push eax
lea edx, [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
call fcn.0053db54
mov eax, dword [ebp - 0x20]
xor edx, edx
mov dword [ebp - 0x20], edx
call fcn.00403d30
jmp 0x4bf743
mov eax, esi
call fcn.0046cf34
mov edx, dword [0x5712b8]
movzx edx, byte [edx + 0x50]
movzx edx, word [edx*2 + 0x56a17c]
or dx, 0x800
or dx, 0x10
movzx edx, dx
or eax, edx
or eax, 4
push eax
mov eax, edi
call fcn.004361d4
call fcn.00431778
push eax
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x70]
call fcn.00405908
mov edx, eax
lea eax, [ebp - 0x7c]
call fcn.00405a28
mov edx, dword [ebp - 0x7c]
lea ecx, [ebp - 0x54]
pop eax
call fcn.005074b0
jmp 0x4bf743
mov eax, dword [0x5712b8]
cmp word [eax + 0x4a], 0
je 0x4bf1d6
lea eax, [ebp - 4]
push eax
lea edx, [ebp - 0x80]
mov eax, esi
call fcn.0046a3dc
mov eax, dword [ebp - 0x80]
push eax
cmp dword [esi + 0x270], 0
setne al
mov edx, dword [esi + 0x270]
pop ecx
call fcn.00555bb8
lea eax, [ebp - 0x34]
push eax
push edi
lea eax, [ebp - 9]
push eax
mov eax, dword [0x5712b8]
lea ecx, [eax + 0xd8]
mov ebx, dword [0x5712b8]
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x4c]
call dword [ebx + 0x48]
cmp byte [ebp - 9], 0
je 0x4bf743
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
test eax, eax
je 0x4bf4ba
xor edx, edx
call fcn.0046a324
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, dword [eax + 0x48]
push edx
mov edx, dword [eax + 0x4c]
push edx
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x34]
mov ebx, dword [eax]
call dword [ebx + 0x88]
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, esi
mov ecx, dword [eax]
call dword [ecx + 0x68]
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov dl, 1
call fcn.0046a324
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
call fcn.00472cbc
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
call fcn.00472ce0
call fcn.005340e0
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x4bf28c
push 0
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov ecx, 0x250000
mov edx, 0xa100
call fcn.0046b73c
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
je 0x4bf2be
mov eax, dword [ebp - 0x18]
cmp word [eax + 0x6a], 0
je 0x4bf2be
mov eax, dword [ebp - 0x18]
mov edx, dword [eax + 0x68]
mov dword [esi + 0x2a0], edx
mov edx, dword [eax + 0x6c]
mov dword [esi + 0x2a4], edx
mov eax, dword [ebp - 0x18]
mov dword [eax + 0x6c], esi
mov dword [eax + 0x68], 0x4bf8fc
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, dword [eax + 0x38]
mov dword [esi + 0x298], edx
mov edx, dword [eax + 0x3c]
mov dword [esi + 0x29c], edx
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov dword [eax + 0x3c], esi
mov dword [eax + 0x38], 0x4bf8fc
mov eax, edi
call fcn.004361d4
call fcn.00431778
push eax
call sub.gdi32.dll_SaveDC
mov dword [ebp - 0x1c], eax
mov eax, edi
call fcn.004361d4
call fcn.00431108
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
call fcn.0046e9ac
dec eax
test eax, eax
jl 0x4bf423
inc eax
mov dword [ebp - 0x24], eax
xor ebx, ebx
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, ebx
call fcn.0046e970
cmp byte [eax + 0x57], 0
je 0x4bf419
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, ebx
call fcn.0046e970
mov eax, dword [eax + 0x44]
add eax, dword [ebp - 0x30]
push eax
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, ebx
call fcn.0046e970
mov eax, dword [eax + 0x40]
add eax, dword [ebp - 0x34]
push eax
mov eax, edi
call fcn.004361d4
call fcn.00431778
pop edx
pop ecx
call fcn.00468904
push 0
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, ebx
call fcn.0046e970
push eax
mov eax, edi
call fcn.004361d4
call fcn.00431778
mov ecx, eax
mov edx, 0xf
pop eax
call fcn.0046b73c
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, ebx
call fcn.0046e970
mov edx, dword [ebp - 0x30]
neg edx
sub edx, dword [eax + 0x44]
push edx
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, ebx
call fcn.0046e970
mov edx, dword [ebp - 0x34]
neg edx
sub edx, dword [eax + 0x40]
push edx
mov eax, edi
call fcn.004361d4
call fcn.00431778
pop edx
pop ecx
call fcn.00468904
push 0x1fffffff
lea edx, [ebp - 0x34]
mov cl, 0xff
mov eax, edi
call fcn.004a819c
inc ebx
dec dword [ebp - 0x24]
jne 0x4bf330
cmp dword [ebp - 0x18], 0
je 0x4bf456
mov eax, dword [ebp - 0x18]
cmp word [eax + 0x6a], 0
je 0x4bf456
mov eax, dword [ebp - 0x18]
mov edx, dword [esi + 0x2a0]
mov dword [eax + 0x68], edx
mov edx, dword [esi + 0x2a4]
mov dword [eax + 0x6c], edx
xor eax, eax
mov dword [esi + 0x2a0], eax
mov dword [esi + 0x2a4], eax
mov eax, dword [0x5712b8]
mov eax, dword [eax + 0x12c]
mov edx, dword [esi + 0x298]
mov dword [eax + 0x38], edx
mov edx, dword [esi + 0x29c]
mov dword [eax + 0x3c], edx
xor eax, eax
mov dword [esi + 0x298], eax
mov dword [esi + 0x29c], eax
mov dl, 7
mov eax, edi
call fcn.00437344
xor edx, edx
mov eax, edi
mov ecx, dword [eax]
call dword [ecx + 0x78]
mov eax, edi
call fcn.004361d4
call fcn.0043166c
mov eax, dword [ebp - 0x1c]
push eax
mov eax, edi
call fcn.004361d4
call fcn.00431778
push eax
call sub.gdi32.dll_RestoreDC
jmp 0x4bf743
lea eax, [ebp - 0x34]
xor ecx, ecx
or edx, 0xffffffff
call fcn.004081a8
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0x14]
mov dl, 1
call fcn.00430da8
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0x10]
xor edx, edx
call fcn.00430a44
lea eax, [ebp - 4]
push eax
lea edx, [ebp - 0x84]
mov eax, esi
call fcn.0046a3dc
mov eax, dword [ebp - 0x84]
push eax
cmp dword [esi + 0x270], 0
setne al
mov edx, dword [esi + 0x270]
pop ecx
call fcn.00555bb8
mov eax, dword [0x5712b8]
call fcn.004bdc78
test al, al
je 0x4bf54e
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
mov edx, dword [0x56b3f4]
mov edx, dword [edx]
mov edx, dword [edx + 0x78]
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
call fcn.004bdbdc
mov eax, dword [0x5712b8]
cmp byte [eax + 0x3d], 0
je 0x4bf62e
mov eax, dword [0x5712b8]
call fcn.004bdc78
test al, al
je 0x4bf59b
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
mov edx, dword [esi + 0x284]
mov ecx, edx
shl edx, 5
sub edx, ecx
mov ecx, dword [0x56b084]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x78bc]
mov edx, dword [ecx + edx*8 + 0x24]
call fcn.004302fc
jmp 0x4bf5bf
cmp dword [0x56a190], 0
je 0x4bf5bf
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
mov edx, dword [0x56a190]
mov edx, dword [edx + 0x1c]
mov edx, dword [edx + 0x18]
call fcn.004302fc
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
cmp dword [eax + 0x18], 0
jge 0x4bf5e0
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
xor edx, edx
call fcn.004302fc
mov dl, 1
mov eax, dword [0x53b934]
call fcn.0053c0c4
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov byte [eax + 0x50], 1
lea eax, [ebp - 0x34]
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 4]
mov edx, edi
mov eax, dword [ebp - 0x20]
call fcn.0053de78
lea eax, [ebp - 0x64]
push eax
lea edx, [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
call fcn.0053db54
mov eax, dword [ebp - 0x20]
xor edx, edx
mov dword [ebp - 0x20], edx
call fcn.00403d30
jmp 0x4bf743
mov eax, dword [0x5712b8]
call fcn.004bdc78
test al, al
je 0x4bf6a5
mov eax, esi
call fcn.0046cf34
mov ebx, eax
mov eax, dword [0x5712b8]
movzx eax, byte [eax + 0x50]
movzx eax, word [eax*2 + 0x56a17c]
or ax, 0x150
movzx eax, ax
or ebx, eax
mov eax, dword [0x56b194]
mov eax, dword [eax]
call fcn.0048aab4
test al, al
je 0x4bf675
or ebx, 0x20000
lea eax, [ebp - 0x34]
push eax
push ebx
mov eax, dword [esi + 0x284]
push eax
push 0
mov eax, dword [0x56b084]
mov eax, dword [eax]
push eax
push 0
mov eax, dword [ebp - 4]
call fcn.00405908
mov edx, eax
mov cl, 1
mov eax, edi
call fcn.004a7b94
jmp 0x4bf743
cmp dword [0x56a190], 0
je 0x4bf6c9
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
mov edx, dword [0x56a190]
mov edx, dword [edx + 0x1c]
mov edx, dword [edx + 0x18]
call fcn.004302fc
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
cmp dword [eax + 0x18], 0
jge 0x4bf6ea
mov eax, edi
call fcn.004361d4
mov eax, dword [eax + 0xc]
xor edx, edx
call fcn.004302fc
mov eax, esi
call fcn.0046cf34
mov edx, dword [0x5712b8]
movzx edx, byte [edx + 0x50]
movzx edx, word [edx*2 + 0x56a17c]
or dx, 0x800
or dx, 0x10
movzx edx, dx
or eax, edx
push eax
mov eax, edi
call fcn.004361d4
call fcn.00431778
push eax
mov eax, dword [ebp - 4]
call fcn.00405908
mov edx, eax
lea eax, [ebp - 0x88]
call fcn.00405a28
mov edx, dword [ebp - 0x88]
lea ecx, [ebp - 0x34]
pop eax
call fcn.005074b0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4bf796
lea eax, [ebp - 0x88]
call fcn.0040586c
lea eax, [ebp - 0x84]
mov edx, 2
call fcn.00405874
lea eax, [ebp - 0x7c]
mov edx, 2
call fcn.00405874
lea eax, [ebp - 8]
mov edx, dword [0x53b8dc]
call fcn.00406f50
lea eax, [ebp - 4]
call fcn.0040586c
ret